当前位置:网站首页>LocalDate时间日期包的用法
LocalDate时间日期包的用法
2022-08-04 21:13:00 【很菜的萝卜】
1、获取今天的日期
LocalDate nowLocalDate=LocalDate.now();
2、获取年月日信息
LocalDate nowLocalDate=LocalDate.now();
//年
int year=nowLocalDate.getYear();
//月
int month=nowLocalDate.getMonthValue();
//日
int day=nowLocalDate.getDayOfMonth();
3、处理自定义日期
LocalDate nowLocalDate=LocalDate.of(2022,8,3);
4、判断两个日期是否相等
LocalDate date1=LocalDate.now();
LocalDate date2=LocalDate.of(2018,8,3);
if(date1.equals(date2)){
System.out.println("两个日期是同一天!");
}
5、周期判断-比较月份和日期
MonthDay monthDay1=MonthDay.now();
MonthDay monthDay2=MonthDay.of(8,3);
if(monthDay1.equals(monthDay2)){
System.out.println("两个日期同月同日!");
}
6、获取当前的时间-不含日期
LocalTime localTime=LocalTime.now();
7、在当前时间上微调
LocalTime localTime=LocalTime.now();
//小时
System.out.println(localTime.plusHours(1));
//分钟
System.out.println(localTime.plusMinutes(1));
//秒
System.out.println(localTime.plusSeconds(1));
//纳秒
System.out.println(localTime.plusNanos(1));
8、在当前日期上微调
LocalDate localDate=LocalDate.now();
//调整日期时要使用ChronoUnit来声明日期单位。
System.out.println("一个月以后的日期为:"+localDate.plus(1,ChronoUnit.MONTHS));
9、直接计算指定时间段以后的日期
LocalDate localDate=LocalDate.now();
System.out.println("一个月以前的日期:"+localDate.minus(1,ChronoUnit.MONTHS));
System.out.println("一个月以后的日期:"+localDate.plus(1,ChronoUnit.MONTHS));
10、Clock时钟类-获取当前时间
//返回UTC时区的当前时间
Clock clock=Clock.systemUTC();
System.out.println("systemUTC:"+clock.millis());
//返回默认时区的当前时间
Clock defaultClock=Clock.systemDefaultZone();
System.out.println("systemDefaultZone:"+defaultClock.millis());
11、判断两个日期的先后
LocalDate beforeDate=LocalDate.of(2018,2,1);
LocalDate afterDate=beforeDate.plus(1,ChronoUnit.MONTHS);
if (afterDate.isAfter(beforeDate)){
System.out.println("之后的日期:"+afterDate);
}
if (beforeDate.isBefore(afterDate)){
System.out.println("之前的日期:"+beforeDate);
}
12、处理时区
LocalDateTime localDateTime=LocalDateTime.now();
//指定为上海时区
ZonedDateTime shangHaiDateTime=ZonedDateTime.of(localDateTime,ZoneId.of("Asia/Shanghai"));
//转换为纽约时间
ZonedDateTime newYorkDateTime=shangHaiDateTime.withZoneSameInstant(ZoneId.of("America/New_York"));
13、仅表示年月-YearMonth
YearMonth yearMonth=YearMonth.now();
//lengthOfMonth可用来输出当月的天数
System.out.println("该月的天数:"+yearMonth.lengthOfMonth());
14、检查闰年
LocalDate nowLocalDate=LocalDate.now();
if (nowLocalDate.isLeapYear()) {
System.out.println(nowLocalDate.getYear() + "是闰年!");
}else {
System.out.println(nowLocalDate.getYear() + "不是闰年!");
}
15、计算两个日期之间的天数和月数
//计算同年的月数、同月的天数
LocalDate nowLocalDate=LocalDate.now();
LocalDate oldLocalDate=LocalDate.parse("2022-08-03");
Period period=Period.between(oldLocalDate,nowLocalDate);
System.out.println("months:"+period.getMonths());
System.out.println("year:"+period.getYears());
//计算不同年的月数、不同月的天数,需要使用ChronoUnit指定单位
System.out.println(oldLocalDate.until(nowLocalDate,ChronoUnit.MONTHS));
System.out.println(nowLocalDate.toEpochDay()- oldLocalDate.toEpochDay());
16、时间戳
Instant类似于Date类。他们之间可以相互转换。
Instant instant=Instant.now();
System.out.println("当前的时间戳:"+instant.toEpochMilli());
17、使用JAVA预定义的格式化工具去解析或格式化日期
String dateStr="20190103";
LocalDate formattedLocalDate=LocalDate.parse(dateStr, DateTimeFormatter.BASIC_ISO_DATE);
System.out.println("格式化后的日期为:"+formattedLocalDate);
18、字符串和日期互转
LocalDate nowLocalDate=LocalDate.now();
DateTimeFormatter formatter1=DateTimeFormatter.ofPattern("yyyy/MM/dd");
String dateToStr=nowLocalDate.format(formatter1);
System.out.println("日期转字符串:"+dateToStr);
LocalDate date2=LocalDate.parse(dateToStr,formatter1);
System.out.println("字符串转日期:"+date2);
边栏推荐
- 两种白名单限流方案(redis lua限流,guava方案)
- proe和creo的区别有哪些
- 2022年江苏省大学生电子设计竞赛(TI杯)B题 飞机 省级一等奖记录 “一个摆烂人的独白”
- Spss-系统聚类软件实操
- 文章复现:超分辨率网络-VDSR
- ue unreal 虚幻 高分辨率无缩放 编辑器字太小 调整编辑器整体缩放
- PRIMAL: Pathfinding via Reinforcement and Imitation Multi-Agent Learning Code Analysis
- LayaBox---TypeScript---举例
- 【Programming Ideas】
- 宝塔实测-搭建中小型民宿酒店管理源码
猜你喜欢
Big capital has begun to flee the crypto space?
88.(cesium之家)cesium聚合图
SAP ABAP OData 服务如何支持 $select 有选择性地仅读取部分模型字段值试读版
MATLAB中readtimetable函数用法
proe和creo的区别有哪些
PowerCLi import license to vCenter 7
LayaBox---TypeScript---首次接触遇到的问题
【2022牛客多校5 A题 Don‘t Starve】DP
链队
Interviewer: How is the expired key in Redis deleted?
随机推荐
LayaBox---knowledge point
2022年江苏省大学生电子设计竞赛(TI杯)B题 飞机 省级一等奖记录 “一个摆烂人的独白”
mdk5.14无法烧录
伺服电机矢量控制原理与仿真(1)控制系统的建立
Red team kill-free development practice of simulated confrontation
如何为Web3.0世界启动完美的DAO
【2022杭电多校5 1012题 Buy Figurines】STL的运用
1、File对象学习
【一起学Rust | 进阶篇 | Service Manager库】Rust专用跨平台服务管理库
模拟对抗之红队免杀开发实践
js data type, throttling/anti-shake, click event delegation optimization, transition animation
传奇服务器需要什么配置?传奇服务器租用价格表
经验分享|盘点企业进行知识管理时的困惑类型
SPSS-unary regression practice
【Programming Ideas】
buu web
PowerCLi import license to vCenter 7
[21天学习挑战赛——内核笔记](二)——设备树基础
二叉搜索树解决硬木问题
Named routes, the role of name in components