jdk8 时间转换

时间取值

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);

    }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值