简单整理时间处理问题

日期 LocalDate:

// 查看当天 年月日
LocalDate date= LocalDate.now();  // 2021-06-30

	//格式化:转为String
	String str2 = date.format(DateTimeFormatter.ISO_LOCAL_DATE); //  2021-06-30
	
	String str1 = date.format(DateTimeFormatter.BASIC_ISO_DATE); //  20210630
	DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd");
	String str5 = date.format(dtf); // 2021-06-30
	LocalDate date13 = LocalDate.parse(str5, dtf); // 2021-06-30

字符串:LocalDate date = LocalDate.parse(" 2021-06-30");

LocalDate date = LocalDate.parse("2021-06-30");

时间戳:LocalDate–> long

 long todayTime = LocalDateTime.of(LocalDate.now(), LocalTime.MIN).atZone(ZoneId.systemDefault())
                .toInstant().toEpochMilli();
                
//时间戳,增加80天,再转乘时间戳
long newTime = Instant.ofEpochMilli(info.getExpireTime()).plus(80, ChronoUnit.DAYS)
        .toEpochMilli();  

//Instant 
Instant instant = Instant.ofEpochMilli(123123123132L);  
instant.plus(80, ChronoUnit.DAYS).toEpochMilli();             

Period
Period用于计算两个LocalDate之间的时长。举些例子:

LocalDate date2 = LocalDate.of(2021, 5, 29);
Period period = Period.between(date2, date);
int monthsBetween = period.getMonths(); // 1
int daysBetween = period.getDays(); // 1

比较两个时间的先后

	LocalDate date15 = LocalDate.of((2021, 5, 29);
	date.isEqual(date15); // false
	date.isAfter(date15); // false
	date.isBefore(date15); // true

添加天数:

LocalDateTime todayStartTime = LocalDateTime.of(LocalDate.now(), LocalTime.MIN).plusDays(3);
long now = todayStartTime.atZone(ZoneId.systemDefault()).toInstant().ofEpochMilli(123123123132L);
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值