Date日期类,超详细整理,适合新手入门

文章目录

  • 1. 第一代日期Date类
  • 2. 第二代日期Calendar类
  • 3. 第三代日期LocalDateTime类
    • 3.1 Instant类 时间戳
    • 3.2 其它方法

Date日期类,超详细整理,适合新手入门_第1张图片

1. 第一代日期Date类

Date日期类,超详细整理,适合新手入门_第2张图片

  • jdk1.0引入
  1. Diagram类图中的Properties代表(getter、setter)
    Date日期类,超详细整理,适合新手入门_第3张图片
  2. 第一代日期类
    包含两个构造器,Date() 和Date(long);
    new Date(): 精确到毫秒;
    默认输出格式:Mon Oct 31 14:32:17 JST 2022(星期 月份 日 时分秒 JST 年)
    Date日期类,超详细整理,适合新手入门_第4张图片
    SimpleDateFormat: 格式化和解析日期的具体类,允许进行解析(文本 -> 日期)
    常见格式:yyyy年MM月dd日 D HH:mm:ss:SSS(hh代表12小时制、SSS代表毫秒、D今天是这一年的第几天)
    Date日期类,超详细整理,适合新手入门_第5张图片
    new Date(long):通过指定毫秒数得到时间
    Date日期类,超详细整理,适合新手入门_第6张图片
    new SimpleDateFormat(“yyyy年MM月dd日 HH:mm:ss:SSS”).parse(“2022年10月31日 14:58:22:119”)
    可以将格式化的字符串转换成默认日期格式(日期 -> 文本)
    s字符串中的日期格式必须和simpleDateFormat括号里的日期格式相同,才可以使用simpleDateFormat.parse(s)
    Date日期类,超详细整理,适合新手入门_第7张图片
    默认日期格式 <-> 自定义日期格式,相互转换
    Date日期类,超详细整理,适合新手入门_第8张图片

2. 第二代日期Calendar类

Date日期类,超详细整理,适合新手入门_第9张图片

  • Calendar类是一个抽象类(抽象类不能实例化),构造器是私有的,可以通过getInstance() 来获取实例
  • Calendar类提供了大量的方法和静态属性供程序员使用
  • jdk1.1引入
  1. Calendar没有提供对应的格式化类,因此需要自己组合输出日期
    Date日期类,超详细整理,适合新手入门_第10张图片

3. 第三代日期LocalDateTime类

Date日期类,超详细整理,适合新手入门_第11张图片
构造器
Date日期类,超详细整理,适合新手入门_第12张图片

  • jd8引入;
  • LocalDate()输出年月日;
  • LocalTime()输出时分秒;
  • LocalDateTime()输出年月日时分秒;
  1. LocalDateTime.now(); 返回当前时间Date日期类,超详细整理,适合新手入门_第13张图片
  2. 创建DateTimeFormatter类对象进行格式化
    Date日期类,超详细整理,适合新手入门_第14张图片

3.1 Instant类 时间戳

Date日期类,超详细整理,适合新手入门_第15张图片
构造器
Date日期类,超详细整理,适合新手入门_第16张图片

  1. Instant.now()静态方法获取表示当前时间戳的对象
    Date日期类,超详细整理,适合新手入门_第17张图片
  2. 将Instant对象 转换成 Date
    Date日期类,超详细整理,适合新手入门_第18张图片
  3. 将Date 转换成Instant对象
    Date日期类,超详细整理,适合新手入门_第19张图片

3.2 其它方法

  1. plus()方法、minus()方法,可以对当前的时间进行加或者减
    查看365天之后,是几月几号,输出年月日时分秒
    Date日期类,超详细整理,适合新手入门_第20张图片
    Date日期类,超详细整理,适合新手入门_第21张图片
    查看12345分钟前是什么时候?输出年月日时分秒
    Date日期类,超详细整理,适合新手入门_第22张图片
    Date日期类,超详细整理,适合新手入门_第23张图片

你可能感兴趣的:(javaSE,java,开发语言)