当前位置: 代码迷 >> 综合 >> Tools-时间
  详细解决方案

Tools-时间

热度:101   发布时间:2023-10-24 06:30:28.0

//设置一个时间 2021-06-18 23:00
LocalDateTime of = LocalDateTime.of(2021, 06, 18, 23, 00);
//获取当前的时间
LocalDateTime now = LocalDateTime.now();

//获取年月日
int year = LocalDateTime.now().getYear();
int month = LocalDateTime.now().getMonthValue();
int day = LocalDateTime.now().getDayOfMonth();
System.out.println(year + "-" + month + "-" + day);

//+2
//-2
LocalDateTime localDateTime = LocalDateTime.now().plusDays(2);
LocalDateTime localDateTime1 = LocalDateTime.now().minusDays(2);
System.out.println(localDateTime);
System.out.println(localDateTime1);


//获取时间戳
Instant instant = Instant.now();
System.out.println("这个值和当地时间差8个小时" + instant);
System.out.println("获取毫秒数=" + System.currentTimeMillis());
System.out.println("获取毫秒数=" + instant.toEpochMilli());


//获取2个时间差
Instant instant1 = Instant.now();
Instant instant2 = Instant.now().plusSeconds(10 * 60);
long l = Duration.between(instant1, instant2).toMinutes();
System.out.println("相差=" + l + "分钟");


//获取时区  Asia/Shanghai
Set<String> availableZoneIds = ZoneId.getAvailableZoneIds();
availableZoneIds.stream().forEach(s -> System.out.println(s));
//获取当前时区
Set<String> availableZoneIds1 = ZoneId.getAvailableZoneIds();
availableZoneIds1.stream().forEach(s -> System.out.println(s));


//date - instant - localdateTime  互相转换
Date date = new Date();
Instant instant3 = date.toInstant();

LocalDateTime localDateTime2 = LocalDateTime.ofInstant(instant3, ZoneId.systemDefault());
System.out.println(localDateTime2);

//  LocalDateTime 给当前时区 转换为  Instant
//  Instant 转换为 Date
Instant instant4 = LocalDateTime.now().atZone(ZoneId.systemDefault()).toInstant();
Date date1 = Date.from(instant4);


//时间格式化
DateTimeFormatter dateTimeFormatter =DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
System.out.println(dateTimeFormatter.format(LocalDateTime.now()));


//字符串转时间
DateTimeFormatter dateTimeFormatter1 =DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime parse = LocalDateTime.parse("2021-04-10 18:01:09", dateTimeFormatter);
System.out.println("parse时间"+parse);

  相关解决方案