Java8 新时间类LocalDate

1、获取当前日期、时间、日期时间

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

2、生成指定日期、时间、日期时间

LocalDate ofDate = LocalDate.of(2021, 6, 20);
LocalTime ofTime = LocalTime.of(10, 30, 30);
LocalDateTime ofDateTime1 = LocalDateTime.of(2021, 6, 20, 10, 30, 30);
LocalDateTime ofDateTime2 = LocalDateTime.of(ofDate, ofTime);

3、日期、时间加减

// plus 加 
// minus 减
LocalDate plusYear = nowDate.plusYears(1);
LocalDate plusMonth = nowDate.plusMonths(1);
LocalDate plusDay = nowDate.plusDays(1);
LocalDate plusWeek = nowDate.plusWeeks(1);
LocalDate minusYear = nowDate.minusYears(1);
LocalDate minusMonth = nowDate.minusMonths(1);
LocalDate minusDay = nowDate.minusDays(1);
LocalDate minusWeek = nowDate.minusWeeks(1);

LocalTime plusHour = nowTime.plusHours(1);
LocalTime plusMinute = nowTime.plusMinutes(1);
LocalTime plusSecond = nowTime.plusSeconds(1);
LocalTime minusHour = nowTime.minusHours(1);
LocalTime minusMinute = nowTime.minusMinutes(1);
LocalTime minusSecond = nowTime.minusSeconds(1);

 

4、分解日期、时间

int year = dateTime.getYear();  // 年
int month = dateTime.getMonthValue();  // 月
int dayOfYear = dateTime.getDayOfYear();  // 日
int dayOfMonth = dateTime.getDayOfMonth();  // 当年第几天
int hour = dateTime.getHour();  // 时
int minute = dateTime.getMinute();  // 分
int second = dateTime.getSecond();  // 秒
DayOfWeek dayOfWeek = dateTime.getDayOfWeek();  // 周

5、时间比较

// dateTime 是否早于 dateTime2
boolean isBefore = dateTime.isBefore(dateTime2);
// dateTime 是否晚于 dateTime2
boolean isAfter = dateTime.isAfter(dateTime2);

// 时间差(now - time)
Period until = time.until(now);
int years = until.getYears();
int months = until.getMonths();
int days = until.getDays();

6、格式化时间

// 格式化模板
DateTimeFormatter format = DateTimeFormatter.ofPattern("yyyy-MM-dd");
LocalDate now = LocalDate.now();

// LocalDate → 字符串
String dateString = format.format(now);
System.out.println(dateString);

// 字符串 → LocalDate
LocalDate dateTime1 = LocalDate.parse("2021-10-30", format);
System.out.println(dateTime1);

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值