admin管理员组文章数量:1595878
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.time.LocalTime;
import java.time.Period;
public class test {
public static void main(String[] args) {
LocalDateTime now = LocalDateTime.now();
System.out.println("当前时间 : " + now); //注意: 这个会打印 年月日时分秒毫秒
System.out.println("5分钟后的时间 : " + now.plusMinutes(5));
System.out.println("2小时后的时间 : " + now.plusHours(2));
System.out.println("1星期后的时间 : " + now.plusWeeks(1));
System.out.println("1个月后的时间 : " + now.plusMonths(1));
System.out.println("1年后的时间 : " + now.plusYears(1));
System.out.println("1年前的时间 : " + now.plusYears(-1));//plusXXX方法是加
System.out.println("1年前的时间 : " + now.minusYears(1));// minusXXX方法是减
System.out.println("修改后的时间 : " + now.withYear(2088));// 直接修改使用withXXX
System.out.println("当天最大时间 : " + now.with(LocalTime.MAX));
System.out.println("当天最小时间 : " + now.with(LocalTime.MIN));
//原来获取某个时间之前的时间的方法
Double tempTime = 1.5 * 3600 * 1000; //1.5H
long time = new Date().getTime() - tempTime .longValue();
System.out.println("1.5个小时前的时间 :" + new Date(time));
Double tempTime1 = 1.5 * 24 * 3600 * 1000;//1.5天
long time1 = new Date().getTime() - tempTime1.longValue();
System.out.println("1.5天前的时间 :" + new Date(time1));
LocalDate date = LocalDate.now();
//注意: 这个只会打印 年月日
System.out.println("1天后的日期 : " + date.plusDays(1));
LocalTime time = LocalTime.now();
//注意: 这个只会打印 时分秒毫秒
System.out.println("1小时后的时间 : " + time.plusHours(1));
//查看相差天数
long days = Duration.between(LocalDateTime.now(), LocalDateTime.now().plusDays(1)).toDays();
//创建一个1年,2个月,3天的间隔
Period period2 = Period.of(1, 2, 3);
// 打印日期为date之后1年零2个月后3天的日期
System.out.println(date.plus(period2));
//创建一个年月日时分秒的时间,传值年,月,日,时,分,秒,也可以传其他值可以自己尝试
LocalDateTime tempDate = LocalDateTime.of(2022,2,2,12,15,01);
//转换成Date类型--mybatis早期版本不支持JDK1.8的LocalDate 、LocalDateTime 、LocalTime 类,直接使用mybatis保存到数据库会报错
ZoneId zoneId = ZoneId.systemDefault();
ZonedDateTime zonedDateTime = now.atZone(zoneId);
Instant instant = zonedDateTime.toInstant();
Date d = Date.from(instant);
//Date转换成LocalDateTime
Date date = new Date();
Instant instant = date.toInstant();
ZoneId zoneId = ZoneId.systemDefault();
LocalDateTime localDateTime = LocalDateTime.ofInstant(instant, zoneId);
}
}
本文标签: 便捷类型时间方法LocalDateTime
版权声明:本文标题:JDK1.8更便捷获取时间的方法:LocalDateTime、LocalDate、LocalTime、Period以及跟Date类型的转换 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1728237184a1150555.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论