Java函数库之java.time包

  1. of: 创建时间日期对象。
    LocalDate.of(2023, 10, 1) 创建一个表示 2023 年 10 月 1 日的 LocalDate 对象。

  2. parse: 解析时间日期字符串为对象。
    LocalDateTime.parse(“2023-05-08T02:30:00”) 将字符串解析为一个 LocalDateTime 对象。

  3. get: 获取时间日期对象的各种信息,如年、月、日、时、分、秒等。
    date.getMonth() 返回该日期对象的月份。

	LocalDate date = LocalDate.now();
	int month = date.getMonthValue(); //获取当前月份的值
	System.out.println(month);
  1. with: 修改时间日期对象的某些字段值,生成新的对象。
    time.withHour(15) 返回一个修改了小时数为 15 的 LocalTime 对象。

  2. plus / minus: 对时间日期对象进行加减操作。
    dateTime.plus(Duration.ofDays(1)) 将日期时间对象加上一天的时间长度,返回新的日期时间对象。

  3. is: 判断时间日期对象的某个属性是否满足某个条件。
    date.isLeapYear() 判断该日期对象是否是闰年。

  4. format: 格式化时间日期对象为字符串。
    dateTime.format(DateTimeFormatter.ISO_DATE_TIME) 将日期时间对象格式化为 ISO 格式的字符串。

	LocalDateTime dateTime = LocalDateTime.now();
	String isoDateTime = dateTime.format(DateTimeFormatter.ISO_DATE_TIME);
	System.out.println("当前日期时间的 ISO 格式:" + isoDateTime);
注意:不是所有以上前缀的方法都适用于所有时间日期类。不同的时间日期类可能提供了不同的方法,具体使用时需要参考相应的文档。
  1. LocalDate:存日期,不包含时间和时区信息
    LocalDate date1=LocalDate.of(2023,6,7);
    System.out.println(“日期为:”+date1);
    LocalTime:存时间,不包含日期和时区信息,例如 12:30:00。类似以上用法。
    LocalDateTime:存日期和时间,不包含时区信息,例如 2023-05-07T12:30。例如:

    LocalDate date1 = LocalDate.of(2023, 6, 7);
    LocalTime time1 = LocalTime.of(11, 30, 0);
    LocalDateTime dateTime1 = LocalDateTime.of(date1, time1);
    System.out.println(dateTime1);

    ZonedDateTime:表示带时区的日期和时间。
    Instant:表示时间线上的一个瞬时点,可以精确到纳秒级别。
    Duration:一个时间间隔类,用于表示两个时间点之间的时间长度,可以精确到纳秒级别。例如:

    LocalDateTime dateTime1=LocalDateTime.of(date1,time1);//2023-6-7T00:00
    LocalDateTime dateTime2=LocalDateTime.of(date2,time2);//2023-7-7T00:00
    Duration duration = Duration.between(dateTime1,dateTime2);//时间间隔是:PT720H(720小时)
    Period:表示日期段,如两个日期之间的差距。
    LocalDate today = LocalDate.now();
    LocalDate birthday = LocalDate.of(2003, 1, 1);
    Period period = Period.between(birthday, today);

    int years = period.getYears();
    int months = period.getMonths();
    int days = period.getDays();
    DateTimeFormatter:日期和时间格式化类,用于将日期和时间格式化为字符串,或将字符串解析 成日期和时间。
    ZoneId:表示时区信息。
    ZoneOffset:表示时区偏移量

你可能感兴趣的:(Java,java)