java8 新特性- 日期类的使用

/**
     * java8 新特性 日期
     * 旧的: Date非线程安全的。API设计的比较乱。
     * java8:
     * java.time包下:
     *    LocalDate : 年月日
     *    LocaLDateTime: 年月日时间
     *    LocatTime: 时间
     */
    @Test
    public void test10() {
        LocalDate date = LocalDate.now();
        System.out.println("当前日期:" + date);
        // 获取 年月日,周几
        System.out.println("年:" + date.getYear());
        System.out.println("月:" + date.getMonth());
        System.out.println("月(数字):" + date.getMonthValue());
        System.out.println("日:" + date.getDayOfMonth());
        System.out.println("星期:" + date.getDayOfWeek());

        // 去年  明年
        LocalDate date1 = date.plusYears(2);
        System.out.println("加2: " + date1.getYear());

        LocalDate date2 = date.plusYears(-3);
        System.out.println("减3: " + date2.getYear());

        LocalDate date3 = date.plusMonths(1);
        System.out.println("月份+1:" + date3.getMonthValue());

        // 日期比较
        boolean after = date1.isAfter(date);
        System.out.println(after);
        boolean before = date2.isBefore(date);
        System.out.println(before);

        // LocaLDateTime
        LocalDateTime dateTime = LocalDateTime.now();
        System.out.println(dateTime);

        // DateTimeFormatter  LocalDateTime类转化字符串
        DateTimeFormatter dtf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
        String dateTimeStr = dtf.format(dateTime);
        System.out.println(dateTimeStr);

        // 字符串转化成LocalDateTime   LocalDate   LocalTime
        LocalDateTime.parse(dateTimeStr,dtf);
        LocalDate.parse(dateTimeStr,dtf);
        LocalTime.parse(dateTimeStr,dtf);

        // 日期时间差计算类    java.time.Duration
        LocalDateTime today = LocalDateTime.now();
        System.out.println("today:" + today);

        // 2021-2-12 0:0:0
        LocalDateTime datenew = LocalDateTime.of(2021, 2, 12, 0,0,0);
        // 日期差
        Duration dur = Duration.between(today, datenew);
        // 相差的天数
        System.out.println(dur.toDays());
        System.out.println(dur.toHours());
        System.out.println(dur.toMillis());
        System.out.println(dur.toNanos());
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值