LocalDate、LocalTime 和 LocalDateTime

LocalDate、LocalTime 和 LocalDateTime

LocalDate:代表本地日期(年、月、日、星期)

​ 2023-10-01

LocalTime:代表本地时间(时、分、秒、纳秒)

​ 17:40:52.298632400

LocalDateTime:代表本地日期、时间(年、月、日、星期、时、分、秒、纳秒)

​ 2023-10-01 17:40:52.298632400

 
 

获取对象

方法名示例
public static Xxxx now(): 获取系统当前时间对应的该对象LocaDate ld = LocalDate.now();
LocalTime lt = LocalTime.now();
LocalDateTime ldt = LocalDateTime.now();
public static Xxxx of(…):获取指定时间的对象LocalDate localDate1 = LocalDate.of(2099 , 11,11);
LocalTime localTime1 = LocalTime.of(9, 8, 59);
LocalDateTime localDateTime1 = LocalDateTime.of(2025, 11, 16, 14, 30, 1);

 
 
 

LocalDate:

LocalDate处理年、月、日、星期相关的

方法名说明
public int getYear()获取年
public int getMonthValue()获取月份(1-12)
public int getDayOfMonth()获取日
public int getDayOfYear()获取当前是一年中的第几天
public DayOfWeek getDayOfWeek()获取星期几:ld.getDayOfWeek().getValue()

 

方法名说明
withYear、withMonth、withDayOfMonth、withDayOfYear直接修改某个信息,返回新日期对象
plusYears、plusMonths、plusDays、plusWeeks把某个信息加多少,返回新日期对象
minusYears、minusMonths、minusDays,minusWeeks把某个信息减多少,返回新日期对象
equals、isBefore、isAfter判断两个日期对象,是否相等,在前还是在后

 
 

package com.ouyang.demo09;

import java.time.LocalDate;

public class demo {
    public static void main(String[] args) {

        // 1.now(): 根据当前时间创建LocalDate对象
        LocalDate now=LocalDate.now();
        System.out.println("now = " + now);//now = 2024-07-21

        // 2.of(int year, int month, int dayOfMonth): 根据指定的年月日创建LocalDate对象
        LocalDate of = LocalDate.of(2002, 10, 14);
        System.out.println("of = " + of);//of = 2002-10-14


        // 3.直接修改某个信息: withYear、withMonth、withDayOfMonth、withDayOfYear
        // 新时间都是不可变对象,改时间是返回新的时间对象,原来的时间对象,没有变化
        LocalDate localDate = now.withYear(2009);
        System.out.println("localDate = " + localDate);//localDate = 2009-07-21


        // 4.把某个信息加多少: plusYears、plusMonths、plusDays、plusWeeks
        LocalDate localDate1 = now.plusYears(6);
        System.out.println("localDate1 = " + localDate1);//localDate1 = 2030-07-21

        // 5.把某个信息减多少:minusYears、minusMonths、minusDays、minusWeeks
        LocalDate localDate2 = now.minusYears(4);
        System.out.println("localDate2 = " + localDate2);//localDate2 = 2020-07-21

        // 6.获取 年 月 日
        int year = now.getYear();
        System.out.println("year = " + year);//year = 2024

        // 7.判断2个日期对象,是否相等,在前还是在后: equals isBefore isAfter
        System.out.println(now.equals(of));//false
        System.out.println(now.isBefore(of));//false
        System.out.println(now.isAfter(of));//true

    }
}

 
 
 

LocalTime:

LocalTime:处理时、分、秒、纳秒相关的

方法名说明
public int getHour()获取小时
public int getMinute()获取分
public int getSecond()获取秒
public int getNano()获取纳秒

 
 

方法名说明
withHour、withMinute、withSecond、withNano修改时间,返回新时间对象
plusHours、plusMinutes、plusSeconds、plusNanos把某个信息加多少,返回新时间对象
minusHours、minusMinutes、minusSeconds、minusNanos把某个信息减多少,返回新时间对象
equals、isBefore 、isAfter判断2个时间对象,是否相等,在前还是在后

 
 

package com.ouyang.demo09;

import java.time.LocalTime;

public class demo02 {
    public static void main(String[] args) {
        // 1.now(): 根据当前时间创建LocalTime对象
        LocalTime now = LocalTime.now();
        System.out.println("now = " + now);//now = 17:13:14.172105100

        // 2.of(int hour, int minute, int second): 根据指定的时分秒创建LocalTime对象
        LocalTime of = LocalTime.of(13, 45, 33);
        System.out.println("of = " + of);//of = 13:45:33


        // 3.直接修改某个信息: withHour、withMinute、withSecond、withNano
        // 新时间都是不可变对象,改时间是返回新的时间对象,原来的时间对象,没有变化
        LocalTime localTime1 = now.withHour(12);
        System.out.println("localTime1 = " + localTime1);//localTime1 = 12:13:14.172105100


        // 4.把某个信息加多少: plusHours、plusMinutes、plusSeconds、plusNanos
        LocalTime localTime2 = now.plusHours(3);
        System.out.println("localTime2 = " + localTime2);//localTime2 = 20:13:14.172105100

        // 5.把某个信息减多少:minusHours、minusMinutes、minusSeconds、minusNanos
        LocalTime localTime3 = now.minusHours(7);
        System.out.println("localTime3 = " + localTime3);//localTime3 = 10:13:14.172105100

        // 6.获取 时 分 秒 纳秒
        int hour = now.getHour();
        System.out.println("hour = " + hour);//hour = 17

        // 7.判断2个日期对象,是否相等,在前还是在后: equals isBefore isAfter
        System.out.println(now.equals(of));//false
        System.out.println(now.isBefore(of));//false
        System.out.println(now.isAfter(of));//true
    }
}

 

 
 

LocalDateTime:

LocalDateTime处理年、月、日、星期、时、分、秒、纳秒等信息

方法名说明
getYear、getMonthValue、getDayOfMonth、getDayOfYear getDayOfWeek、getHour、getMinute、getSecond、getNano获取年月日、时分秒、纳秒等
withYear、withMonth、withDayOfMonth、withDayOfYear withHour、withMinute、withSecond、withNano修改某个信息,返回新日期时间对象
plusYears、plusMonths、plusDays、plusWeeks plusHours、plusMinutes、plusSeconds、plusNanos把某个信息加多少,返回新日期时间对象
minusYears、minusMonths、minusDays、minusWeeks minusHours、minusMinutes、minusSeconds、minusNanos把某个信息减多少,返回新日期时间对象
equals 、isBefore 、isAfter判断2个时间对象,是否相等,在前还是在后

 
 
 

LocalDateTime的转换成LocalDate、LocalTime

方法名说明
public LocalDate toLocalDate()转换成一个LocalDate对象
public LocalTime toLocalTime()转换成一个LocalTime对象
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值