【大数类】
BigInteger(整数) 和 BigDecimal(小数) 都是Java针对大数提供的类
常用方法:
(1)加:add
(2)减:subtract
(3)乘:multiply
(4)除:divide
图片来源:java大数运算(讲解)
当使用 BigDecimal 的divide方法时,如果除不尽,会抛出异常,这时可以使用如图方法,作用是保留与调用方法的大数一样的小数精度
教程教的已弃用了。
【日期类】
第一代日期类:Date
在Java中,日期时间用java.util.Date来表示,调用默认构造器Data(),将会创建一个当前系统时间的Date对象,时间精确到毫秒。
它允许进行格式化(日期->文本)、解析(文本->日期)和规范化
常用方法:
(1)Date():分配 Date 对象并初始化此对象,以表示分配它的时间(精确到毫秒)。它的默认输出格式是:Wed Sep 29 19:55:10 CST 2021
,CST是时区缩写,我们是中国时区China's Time zone 或 中国标准时间China Standard Time
(2)Date(long date):分配 Date 对象并初始化此对象,以表示自从标准基准时间(称为“历元(epoch)”,即 1970 年 1 月 1 日 00:00:00 GMT)以来的指定毫秒数。
(2)SimpleDateFormat:格式和解析日期的类。
SimpleDateFormat类的使用:
第二代日期类:Calendar类
-
Calendar类是一个抽象类
-
Calendar类的构造器是私有的,可以通过getInstance()来获取实例。
-
提供大量的方法和字段提供给程序员
-
Calendar类没有提供相应的格式化的类,因此需要程序员自己组合输出。
-
24小时进制的小时字段是:Calendar.HOUR_OF_DAY; 它的月份字段是从0开始的,而不是1月
第三代日期类:LocalDate(日期/年月日),LocalTime(时间/时分秒),LocalDateTime(日期时间) JDK8加入
DateTimeFormatter格式日期类:类似于SimpleDateFormat
DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("YYYY-MM-dd HH:mm:SS");
String format = dateTimeFormatter.format(ldt); //ldt为LocalDateTime对象
System.out.println(format);