时间日期类

本文详细介绍了Java中LocalDateTime类的使用方法,包括如何获取、转换、格式化及解析日期时间,以及如何进行加减运算和设置具体的时间点。此外,还介绍了如何利用Period和Duration类来计算两个日期之间的间隔。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

LocalDateTime的获取方法

public int getYear()
    获取年
public int getMonthValue()
    获取月
public int getDayOfMonth()
    获取月中的天
public int getDayOfYear()
    获取年中的天
public DayOfWeek getDayOfWeek()
    获取星期中的第几天
public int getHour()
    获取小时
public int getMinute()
    获取分钟
public int getSecond()
    获取秒

LocalDateTime的转换方法

**三者的区别
    LocalDateTime: 包含年、月、日、时、分、秒
    LocalDate: 包含年、月、日
    LocalTime:  包含时、分、秒
    
**可以通过LocalDateTime转换为LocalDate和LocalTime
    public LocalDate toLocalDate()
        把LocalDateTime转换为LocalDate
    public LocalTime toLocalTime()
        把LocalDateTime转换为LocalTime

LocalDateTime的格式化和解析

public String format(DateTimeFormatter formatter(参数为格式,如:yyyy-MM-dd HH:mm:ss))  
    格式化:把LocalDateTime转换为String
public static LocalDateTime parse(CharSequence text, DateTimeFormatter formatter)  
    解析:把字符串转换为LocalDateTime对象
**日期格式化代码演示

//获取当前时间的LocalDateTime对象
LocalDateTime localDateTime = LocalDateTime.now();

//创建日期格式化器
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

//格式化
String str=localDateTime.format(formatter);
System.out.println(str);



**日期解析的代码演示

//创建日期格式化器
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");

//日期解析
LocalDateTime localDateTime= LocalDateTime.parse("2020-08-23 15:19:39",formatter);

//...后面就可以使用LocalDateTime的方法,对时间进行操作

LocalDateTime加减运算方法

public LocalDateTime plusYears(int n)
    加、减年
public LocalDateTime plusMonths(int n)
    加、减月
public LocalDateTime plusDays(int n)
    加、减日
public LocalDateTime plusHours(int n)
    加、减时
public LocalDateTime plusMinutes(int n)
    加、减分
public LocalDateTime plusSeconds(int n)
    加、减秒

LocalDateTime设置时间的方法

public LocalDateTime withYear(int n)
    设置年
public LocalDateTime withMonth(int n)
    设置月
public LocalDateTime withDay(int n)
    设置日
public LocalDateTime withHour(int n)
    设置时
public LocalDateTime withMinute(int n)
    设置分
public LocalDateTime withSecond(int n)
    设置秒

时间间隔类

Period类

**计算两个时间间隔的年、月、日。

//生日的时间
LocalDate localDate1 = LocalDate.of(1996, 6, 23);
//今天的时间
LocalDate localDate2 = LocalDate.now();

//获取时间间隔对象
Period period = Period.between(localDate1,localDate2);

//获取相隔的年
int years = period.getYears();
System.out.println(years);
//获取间隔月
int months = period.getMonths();
//获取间隔天
int days = period.getDays();
System.out.println(years+"年"+months+"月"+days+"天");

Duration类

**计算两个时间间隔的时、分、秒

//生日的时间
LocalDateTime localDate1 = LocalDateTime.of(1996, 6, 23,13,34,22);
//今天的时间
LocalDateTime localDate2 = LocalDateTime.of(1996, 7, 13,06,34,11);

//获取时间间隔对象
Duration duration = Duration.between(localDate1,localDate2);

//获取相隔的小时
long years = duration.toHours(); 
//获取相隔的分钟
long minutes = duration.toMinutes();
//获取相隔的秒
long seconds = duration.toSeconds();
//相隔的毫秒
long millis = duration.toMillis();

System.out.pritnln("-------------");

//获取xx天xx小时xx分钟xx秒
long daysPart = duration.toDaysPart();
int hoursPart = duration.toHoursPart();
int minutesPart = duration.toMinutesPart();
int secondsPart = duration.toSecondsPart();
System.out.println("距离双十一还有:"+daysPart+"天"+hoursPart+"小时"+minutesPart+"分钟"+secondsPart+"秒");

基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目),个人经导师指导并认可通过的高分设计项目,评审分98分,项目中的源码都是经过本地编译过可运行的,都经过严格调试,确保可以运行!主要针对计算机相关专业的正在做大作业、毕业设计的学生和需要项目实战练习的学习者,资源项目的难度比较适中,内容都是经过助教老师审定过的能够满足学习、使用需求,如果有需要的话可以放心下载使用。 基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分毕业设计项目)基于SSM与MySQL的医院预约挂号系统源码及数据库(高分
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值