Math类概述
Math包含执行基本数字运算的方法
没有构造方法,如何使用类中的成员?
看类的成员是否是静态的,如果是,通过类名就可以直接调用。
Math类的常用方法
System类的常用方法
Object类的概述
每个类都可以将Object作为父类。所有类都直接或者间接的继承自该类。
构造方法:public Object()
为什么说子类的构造方法默认访问的是父类的无参构造方法?
因为他们的顶级父类只有无参的构造方法
结论:
1,Object类是所有类的直接或间接父类
2,直接打印一个对象就是打印这个对象的toString方法的放回值
3,Object类的toString方法得到的是对象的地址值
4,我们一般会对toString方法进行重写。
Object类的常用方法
String类中重写的equals方法比较的是字符串如果传入的不是字符串,就直接返回false。
StringBulider类中没有重写equals方法,使用的还是Object中的equals方法。
Object类中的equals方法,底层也是用==号比较地址值。
Objects的常用方法
toString(对象,默认字符串)这个方法如果对象为null,返回的是默认字符串。
BigDecimal类的构造方法
BigDecimal方法有构造方需要创建对象使用
BigDecimal类的常用方法
BigDecimal bd1 = new BigDecimal(0.1);
BigDecimal bd2 = new BigDecimal(0.2)f
方法名 | 说明 |
bd1.add(bd2) | 相加,如果想要精确计算使用字符串的构造方法 |
bd1.subtract(bd2) | 减法 |
bd1.multiply(bd2) | 乘法 |
bd1.divide(bd2) | 除法 |
bd1.divide(bd2,精确几位,色舍入模式) | 除法 |
bd1.divide(bd2,精确几位,色舍入模式)
参数一:表示参数运算的另一个对象,
参数二:表示小数点后精确到多少位
参数三:舍入模式
进一法:BigDecimal。ROUND_UP
去尾法:BigDecimal.ROUND_FLOOR
四舍五入:BigDecimal.ROUND_HALF_UP
结论
1,BigDecimal是用来进行精确计算的
2,创建BigDecimal的对象,构造方法使用参数类型为字符串的
3,四则运算中的除法,如果除不尽使用divide的三个参数的方法
基本类型包装类概述
将基本数据类型封装成对象的好处在于可以在对象中定义更多的功能方法操作该数据
常用的操作之一:用于基本数据类型与字符串自建转换
”123“-->123
Integer类的概述和使用
integer:该对象中包装了一个基本数据类型int的值
Integer构造方法过时了,一般使用其中的静态方法进行实例
装箱:把一个基本数据类型变成对应的包装类
eg:Integer i1 = 100;
自动:java底层会帮我们自动的调用valueof方法
拆箱:把一个包装类型变成对应的基本数据类型
eg:int i2 = i1;把包装类型的数据转化成了基本数据类型
自动装箱机制
Integer i3 = 100;//自动封装机制
i3 += 200;//i3 = i3 + 200;
//会把i3这个对象变成基本数据类型100
//100 + 200 = 300
//把基本数据类型300再次自动封装变成Integer对象赋值给i3
System.out.println(i3);
注意:在使用包装类类型的时候,如果做操作,最好先判断是否为null;
推荐:只要是对象,在使用就必须进行不为null的判断
int和String的相互转换
基本类型包装类的最常见操作就是:用于基本类型和字符串之间的相互转换
1,int转换为String
方法一:加双引号
方法二:public static String valueOf(int i):返回int参数的字符串表现形式。该方法时String类中的方法
2,String转换为int
public static int parselnt(String s):将字符串解析为ing类型,该方法是integer类中的方法
Date类
构造方法
public Date();//创建一个data对象,表示默认时间
public Date(long date);//创建一个data对象,表示指定时间
Date date1 = new Date(); //把当前得时间封装成一个data对象
Date date2 = new Date(0L);//把从时间原点开始,过了指定毫秒得时间,封装成一个data对象需要考虑时间差问题
Date类得常用方法
方法名 | 说明 |
public long getTime() | 获取时间对象得毫秒值 |
public void setTime(long time) | 设置时间,传递毫秒值 |
SimpleDateFormat类概述
SimpleDateFormat 可以对date对象进行格式化和解析
格式化:
date对象------>2020年1月1日 0:0:0
解析:
2020年1月1日 0:0:0 ------->date对象
SimpleDateFormat 得构造方法
方法名 | 说明 |
public SimpleDateFormat() | 构造一个SimpleDateFormat,使用默认格式 |
public SimpleDateFormat(String pattern) | 构造一个SimpleDateFormat,使用指定格式 |
格式化和解析日期
1,格式化(从date到String)
public final String format(Date date):将日期格式化成日期或时间字符串
2,解析(从String到date)
public Date parse(String source):从给定字符串得开始解析文本以生成日期
LocalDateTime创建方法
方法名 | 说明 |
public static LocalDateTime now (); | 获取当前系统时间 |
public static LocalDateTime of (); | 使用指定年月日和时分秒初始化一个LocalDateTime对象 |
LocalDateTime获取方法
LocalDateTime转换方法
LocalDateTime格式化和解析
JDK8的日期格式化器:DateTimeFormatter
LocalDateTime增加或者减少时间方法的注意点
1,方法返回一个新的LocalDateTime对象,返回值就是修改之后的结果
2,参数为正,就是往后加
3,参数为负,就是往后减
Plus
minus
LocalDateTime修改方法
period
Duration
总结:
创建时间对象(now,of)
获取时间对象中的年,月,日,时,分,秒,
格式化(fomat)
解析(parse)
增加或减少时间的方法(plus开头,minus开头)
修改时间(with开头)
计算时间间隔的两个类:Period,Duration