时间取值
LocalDate now = LocalDate.now();
LocalDateTime time = now.atTime(LocalTime.MIN);
LocalDateTime max = now.atTime(LocalTime.MAX);
System.out.println("max = " + max);
System.out.println("time = " + time);
LocalDateTime now1 = LocalDateTime.now();
LocalDateTime min = now1.with(LocalTime.MIN);
LocalDateTime max1 = now1.with(LocalTime.MAX);
System.out.println("max1 = " + max1);
System.out.println("min = " + min);
取最小时间 输出 yyyy-HH-mm 00:00:00
LocalDateTime localDateTime1 = LocalDateTime.now();
localDateTime1.with(LocalDateTime.MIN);
LocalDate now = LocalDate.now();
LocalDateTime time = now.atTime(LocalTime.MIN);
取最大时间
LocalDateTime dateTime = localDateTime.plusDays(days);
dateTime.with(LocalTime.MIN).plusHours(23).plusMinutes(59).plusSeconds(59);
第二种
LocalDateTime localDateTime1 = LocalDateTime.now();
localDateTime1.with(LocalDateTime.MAX);
date 转localdate
public static LocalDateTime date2LocalDate(Date date) {
if(null == date) {
return null;
}
return date.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime();
}
localdate转date
LocalDateTime localDate = LocalDateTime.now();
LocalDateTime start = localDate.with(LocalTime.MIN);
Date.from(start.atZone(ZoneId.systemDefault()).toInstant());
date 字符串
DateTimeFormatter df = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
LocalDateTime time = LocalDateTime.now();
String localTime = df.format(time);
LocalDateTime ldt = LocalDateTime.parse("2018-06-01 10:12:05",df);
System.out.println("LocalDateTime转成String类型的时间:"+localTime);
System.out.println("String类型的时间转成LocalDateTime:"+ldt);
获取最后一天或者总天数
public static void main(String[] args) {
for (int i = 0;i<6;i++){
LocalDate today = LocalDate.now().minusMonths(i);
//本月的第一天
LocalDate firstday = LocalDate.of(today.getYear(),today.getMonth(),1);
//本月的最后一天
LocalDate lastDay =today.with(TemporalAdjusters.lastDayOfMonth());
System.out.println(firstday.getMonth().getValue()+"月");
System.out.println("最后一天:"+lastDay.getDayOfMonth());
System.out.println("-------------------");
}
}
计算时间差 可以计算小时、分钟、天
public static void main(String[] args) {
long freeTime1 = ChronoUnit.MINUTES.between(LocalDateTime.now().plusDays(-1), LocalDateTime.now());
System.out.println(freeTime1);
}