Object类、String和StringBuffer、Math类、日期处理类
1、Object类
“万物皆对象”:(1)从类和对象角度:任何具体事物都是一个对象,。
(2)Object类,类似“东西”。所有的类都继承了Object类。
使用规则: (1)所有的类都继承了Object,即使类class P{} 隐式的继承了Object
(2)java中是单继承,Object可能不是类的直接父类,顶级父类
(3)Object变量 可以指向任意一个类的实例对象。
(4) 所有的 数组继承了Object类
Object类的常用方法:
hashcode() 返回值是int ,根据内存地址 计算得到的hashCode (哈希码值)
一般情况下 ,采用== 判断两个对象是否相等,就是判断两个对象的哈希码是否相等
B.equals(Object o) 返回值boolean ,判断传入的o对象,和调用方法的对象b是否相等
如果说equals方法没有重写,等价于o==b ,判断这两个对象的 哈希码值是否一致。
子类 也可以对equals重写,重写之后,有不同的 判断依据
toString() 返回值String ,把对象转成一个String,一般情况sysout(a),实际上就是默认调用a.toString(); 对象的类名@哈希码值
子类可以对toString重写。
2、String和StringBuffer
String不是基本数据类型,首字母大写,是个类。
String和StringBuffer是常见的字符串处理类
注意事项: 常见的字符处理类,用final修饰,不能被继承。
String类中的属性也用final修饰,值不会发生改变。
StringBuffer值是可变的。
String和StringBuffer的区别
String对象创建方式:
声明并赋值:String bb = "123";// 这种赋值方式, 值保存在常量池中,效率相对高。
构造方法赋值
String aa = new String(); //无参数构造方法
String cc = new String("123");//具体值 保存到了 堆内存
String dd = new String(chars);//构造方法参数 char类型的数组
new String(byte[],”utf-8”)//byte数组,和编码格式
String的常见方法:
char charAt(index) 获取字符串中指定位置的字符。其中,参数index指的是字符串的序数,字符串的序数从0开始到length()-1
String concat(String str) 将该String对象与str连接在一起。与Java提供的字符串连接运算符“+”的功能相同
Boolean equals(Object anObject) 将该字符串与指定对象相比,如果两者包含的字符序列相等,则返回true;否则返回false
byte[] getBytes() 将该String对象转换成byte数组
int indexOf(String str) 找出str子字符串在该字符串中第一次出现的位置
int length() 返回当前字符串的长度
String replace(char oldChar,char newChar) 将字符串中的第一个oldChar替换成newChar
boolean endsWith(String sufffix) 该String对象是否以sufffix结束
String substring
(int beginIndex,int endIndex) 获取从beginIndex位置开始到endIndex(不包括)位置的子字符串
char[] toCharArray() 将该String对象转换成char数组
String toUpperCase() 将字符串转换成大写
StringBuffer类常用方法
StringBuff append(String str) 将字符串str追加到当前StringBuffer对象
StringBuffer insert (intoffset , String str) 按顺序将字符串str插入到当前StringBuffer对象的intoffset位置
StringBuffer reverse() 将当前StringBuffer对象的字符序列用其反转形式取代
void setCharAt(int index, char ch) 将index索引处的字符设置为ch
3、Math类
Math类:提供常见的数学运算类。常见方法: 立方、平方、log、sin 、cos
Math使用注意:
(1)Math类构造方法用private修饰,Math不能被new创建实例。
(2)Math类也是用final修饰,不允许被继承。
(3)Math中的方法和属性全用static修饰,不用new对象,
(4)使用时候:类名.方法名() 类名.属性
//Math类中的 方法和 属性全用static 修饰, 类名.方法名() 类名.属性
System.out.println("-10 的绝对值"+Math.abs(-10)); //求数的绝对值
// 求 幂 2的2次方, 3的10次方
System.out.println("2的3次方"+Math.pow(2, 3));;
//求数的四舍五入
System.out.println("2.3的四舍五入值"+ Math.round(2.3));
//地板值:比 数小 的最大值 , 求小数的整数部分
System.out.println("2.3的地板值"+Math.floor(2.3));
//天花板值
System.out.println("2.3的地板值"+Math.ceil(2.3));
//随机数:随机产生 [0,1)的小数 ,左闭右开
System.out.println("随机产生数字"+Math.random());
4、日期处理类
Java中提供了一些对日期出来的类,
Date类:提供 年月日时分秒
构造方法 : Date() 获取当前系统时间
Date(Long 时间间隔) 以毫秒为单位,从1970年1月1号开始往后计算
常用方法:getTime() 就是获取当前时间 和1970年的毫秒差
SimpleDateFormat类:String和Date转换
Date类型对象转String:日期在显示的时候,符合人们的习惯
//year 年份, month月份,day 日 , hour 小时 ,minute 分钟,second 秒
//y代表的是年, 一个y代表一位数字
//M代表月份,
//h代表小时, HH 24小时制 hh 12小时制
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日 hh:mm:ss");
//format 按照写好的转换格式,把date对象转成string
String str = sdf.format(now);
System.out.println(str);
String 转Date:我们要把String按照时间处理
String jieyue ="2020-5-30";
//字符串 转Date,
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Date date = sdf.parse(jieyue);
System.out.println(date);
Calendar:日历类。
使用规则:(1)是一个抽象类, 不能够直接去new对象
(2)日历类的方法,绝大数不是static修饰的,必须 要用对象才能够调用方法
(3)类中提供静态方法getInstance()创建对象
具体使用:
通过getInstance()方法创建Calendar的子类对象
Calendar calendar=Calendar.getInstance();
从Calendar中获取Date对象
Date date=calendar.getTime();
通过Date对象获得对应的Calendar对象
calendar.setTime(new Date());
Object类、String和StringBuffer、Math类、日期处理类的更多相关文章
- 类 String、StringBuffer、StringBuilder
类 String String 类代表字符串.Java 程序中的所有字符串字面值(如 "abc" )都作为此类的实例实现.字符串是常量:它们的值在创建之后不能更改.字符串缓冲区支持 ...
- 深入了解String,StringBuffer和StringBuilder三个类的异同
Java提供了三个类,用于处理字符串,分别是String.StringBuffer和StringBuilder.其中StringBuilder是jdk1.5才引入的. 这三个类有什么区别呢?他们的使用 ...
- 15_常用API_第15天(Object、String、StringBuffer、用户登陆注册)_讲义
今日内容介绍 1.Object 2.String 3.StringBuilder 01API概念 A:API(Application Programming Interface) 应用程序编程接口 B ...
- 6、Object、String、StringBuffer
Java的Api以及Object类 API概念 * A:API(Application Programming Interface) * 应用程序编程接口 * B:Java API * 就是Java提 ...
- 常用API(Object、String、StringBuffer、用户登陆注册)
常用API 今日内容介绍 u Object u String u StringBuilder 第1章 Java的API及Object类 在以前的学习过程中,我们都在学习对象基本特征.对象的使用以及对象 ...
- java基础(15):常用API(Object、String、StringBuffer)
1. Java的API及Object类 在以前的学习过程中,我们都在学习对象基本特征.对象的使用以及对象的关系.接下来我们开始使用对象做事情,那么在使用对象做事情之前,我们要学习一些API中提供的常用 ...
- 代码块&&API(object、String、StringBuffer、StringBuilder)
day 07 代码块 局部代码块 定义在方法中,用户划分区域的 构造代码块 和成员方法并列,用{}包裹 每次创建对象的时候都会执行,优先于构造方法 静态代码块 构造代码块前面用static声明 在同类 ...
- Java_字符类(Character、String、StringBuffer)_char是基本数据类型,Character是其包装类型。
在java中有三个类负责对字符的操作:Character.String.StringBuffer.其中,Character类是对单个字符进行操作,String是对一个字符序列的操作,Stri ...
- 详解 JDK8 新增的日期时间类
JDK8 新增的日期时间类 在本人之前的博文<处理时间的类 -- System类.Date类 .SimpleDateFormat类 与 Calendar类>中,讲到过表示时间的类,有三类: ...
- String、StringBuffer、StringBuilder之间区别
String,StringBuffer,StringBuilder 之间区别 在字符串处理中C#提供了String.StringBuffer.StringBuilder三个类.那么他们到底有什么优缺点 ...
随机推荐
- antd/fusion表格增加圈选复制功能
背景介绍 我们存在着大量在PC页面通过表格看数据业务场景,表格又分为两种,一种是 antd / fusion 这种基于 dom 元素的表格,另一种是通过 canvas 绘制的类似 excel 的表格. ...
- oracle问题:ORA-09817及解决办法
某天以管理员身份登录公司测试库报ORA-09817错误,查了网上的文章说是审计文件没有存储空间造成的.我的这问题也证实了这一点,现将解决步骤分享: 1.发现问题:报ORA-09817 oracle@l ...
- Netty集成HTTP的GET和POST通讯
核心就是ChannelInitializer的实现使用http 消息解码器 package com.coremain.handler; import io.netty.channel.ChannelI ...
- Go 函数的健壮性、panic异常处理、defer 机制
Go 函数的健壮性.panic异常处理.defer 机制 目录 Go 函数的健壮性.panic异常处理.defer 机制 一.函数健壮性的"三不要"原则 1.1 原则一:不要相信任 ...
- Atcoder Regular Contest 167
卡 B 下大分了. A. Toasts for Breakfast Party 发现题意是让方差尽可能小,就是让 \(A\) 里的值尽可能接近. 所以从小到大排个序,把 \(A_{N,\dots,N- ...
- Hooks的核心原理梳理
我们前端都在诟病专业版,它的组件,它的耦合嵌套之深,它的性能. 我们希望改善,我们认为,如果--就好了. 如果重构就好了,如果技术栈统一就好了,如果有规范就好了. 其实,不用等,我们只要在写代码,就可 ...
- Transformers 中原生支持的量化方案概述
本文旨在对 transformers 支持的各种量化方案及其优缺点作一个清晰的概述,以助于读者进行方案选择. 目前,量化模型有两个主要的用途: 在较小的设备上进行大模型推理 对量化模型进行适配器微调 ...
- L3-011 直捣黄龙
#include<bits/stdc++.h> using namespace std; using pii = pair<int, int>; const int N = 3 ...
- Codeforces 1566E Buds Re-hanging
原题链接 Codeforces Global Round 16 E. Buds Re-hanging 首先想到,如果我们把一个\(buds\)挂到一个叶子上,那么会使得叶子总数减\(1\). 还有就是 ...
- python列表之部分列表——切片
目录 切片 全索引 半索引 负数索引 遍历切片 复制列表 切片 全索引 我们平常可能需要使用一个列表中的子列表,也就是部分元素,这个时候我们就需要用到切片这个功能啦 要创建切片,就如同range()函 ...