博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Java8日期类用法示例
阅读量:2197 次
发布时间:2019-05-02

本文共 2136 字,大约阅读时间需要 7 分钟。

获取当前日期

//当前日期和时间LocalDateTime nowDateTime=LocalDateTime.now();//当前日期LocalDate nowDate=LocalDate.now();//当前时间LocalTime nowTime=LocalTime.now();

获取起始和结束时间

//当前日期LocalDate now=LocalDate.now();//起始时间,LocalTime.MIN为00:00LocalDateTime startTime=LocalDateTime.of(now,LocalTime.MIN);//结束时间,LocalTime.MAX为23:59:59.999999999LocalDateTime endTime=LocalDateTime.of(now,LocalTime.MAX);

获取指定日期和时间

//当前日期LocalDate now=LocalDate.now();//一天的开始时间LocalDateTime startOfDay=now.atStartOfDay();//本周一LocalDate monday=now.with(DayOfWeek.MONDAY);//上周一LocalDate lastMonday=now.minusWeeks(1).with(DayOfWeek.MONDAY);//本月第一天LocalDate firstDayOfMonth=now.with(TemporalAdjusters.firstDayOfMonth());//本月最后一天LocalDate lastDayOfMonth=now.with(TemporalAdjusters.lastDayOfMonth());//感恩节(即11月第4个星期四)//withMonth()方法设置月份,需要注意这个月份是从1开始的,和Date以及Calendar的从0开始不同LocalDate thanksGivingDay=LocalDate.now().withMonth(11).withDayOfMonth(1).with(DayOfWeek.THURSDAY).plusWeeks(3L);;

计算时间差

//当前日期LocalDate now=LocalDate.now();//结束日期LocalDate endDate=now.plusWeeks(1L);//日期差值Period dateDiff=Period.between(now,endDate);//相差天数int dayDiffOfDate=dateDiff.getDays();//起始时间,LocalTime.MIN为00:00LocalDateTime startTime=LocalDateTime.of(now,LocalTime.MIN);//结束时间,LocalTime.MAX为23:59:59.999999999LocalDateTime endTime=LocalDateTime.of(now,LocalTime.MAX);//日期时间差值Duration timeDiff=Duration.between(startTime,endTime);//相差小时数,忽略分钟和秒long hourDiffOfTime=timeDiff.toHours();//相差分钟数,忽略秒long minutesDiffOfTime=timeDiff.toMinutes();//相差秒数long secondsDiffOfTime=timeDiff.getSeconds();

时区

//初始化日本时区,UTC+9ZoneId japanZone=ZoneOffset.ofHours(9);//日本现在时间ZonedDateTime japanNow=ZonedDateTime.now(japanZone);

日期格式化

//当前日期和时间LocalDateTime nowDateTime=LocalDateTime.now();//日期格式化DateTimeFormatter formatter=DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");//日期格式化字符串String dateStr=formatter.format(nowDateTime);//日期格式化字符串转为日期时间对象LocalDateTime localDateTime=LocalDateTime.parse(dateStr,formatter);

日期判断和比较

//当前日期LocalDate now=LocalDate.now();//结束日期LocalDate endDate=now.plusWeeks(1L);//日期是否相等now.isEqual(LocalDate.now());//是否在某个日期之前now.isBefore(endDate);//是否在某个日期之后now.isAfter(endDate);//年份是否为闰年now.isLeapYear();

转载地址:http://proub.baihongyu.com/

你可能感兴趣的文章
sublime text3 快捷键修改
查看>>
关于PHP几点建议
查看>>
硬盘的接口、协议
查看>>
VLAN与子网划分区别
查看>>
Cisco Packet Tracer教程
查看>>
02. 交换机的基本配置和管理
查看>>
03. 交换机的Telnet远程登陆配置
查看>>
微信小程序-调用-腾讯视频-解决方案
查看>>
phpStudy安装yaf扩展
查看>>
密码 加密 加盐 常用操作记录
查看>>
TP 分页后,调用指定页。
查看>>
Oracle数据库中的(+)连接
查看>>
java-oracle中几十个实用的PL/SQL
查看>>
PLSQL常用方法汇总
查看>>
几个基本的 Sql Plus 命令 和 例子
查看>>
PLSQL单行函数和组函数详解
查看>>
Oracle PL/SQL语言初级教程之异常处理
查看>>
Oracle PL/SQL语言初级教程之游标
查看>>
Oracle PL/SQL语言初级教程之操作和控制语言
查看>>
Oracle PL/SQL语言初级教程之过程和函数
查看>>