美文网首页
java 8 时间处理

java 8 时间处理

作者: 剪刀手丶爱德华 | 来源:发表于2019-11-13 17:20 被阅读0次

    获取日期

    LocalDate localDate = LocalDate.now();//当前日期
    LocalTime localTime = LocalTime.now();//当前时间
    LocalDateTime localDateTime = LocalDateTime.now();//当前日期时间
    LocalDate date1 =  LocalDate.parse("2019-01-01");
    LocalDate date2 = LocalDate.of(2019,01,01);
    

    时间加减操作

    //一般操作
    LocalDateTime time1 = localDateTime.plus(1,ChronoUnit.DAYS);
    LocalDateTime time2 = localDateTime.minus(1, ChronoUnit.DAYS);
    /**
    ChronoUnit有很多参数选择,年、月、日、时、分、秒、毫秒、星期几
    等等甚至还有半天,基本满足所有的加减需求
    **/
    

    特殊需求

    LocalDateTime time1 = localDateTime.with(TemporalAdjusters.firstDayOfMonth());//获取月份的第一天
    /**
    TemporalAdjusters也有很多参数,当月第一天,当年第一天,当月最后一天等等基本满足特殊需求,用户也可以通过传递行为参数获取自己想要的结果
    **/
    列:
    LocalDateTime time1 = localDate.with(temporal -> temporal.with(DAY_OF_MONTH, temporal.range(DAY_OF_MONTH).getMaximum()));
    LocalDateTime time1 = localDate.with(TemporalAdjusters.lastDayOfMonth());
    //这两个方法都是获取月份的最后一天
    TemporalAdjusters参数
    dayOfWeekInMonth当月第x星期x
    next/previous 下/上一个个星期x
    nextOrSame下一个相同的星期x
    

    日期格式化

    //请求日期格式化
    String str = "2008年08月23日 23:59:59";
    DateTimeFormatter fromate= DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss");
    LocalDateTime date= LocalDateTime.parse(str,fromate);
    //返回日期格式化
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy年MM月dd日 HH:mm:ss");
    LocalDateTime date = LocalDateTime.now();
    String dateStr = formatter.format(date);
    

    相关文章

      网友评论

          本文标题:java 8 时间处理

          本文链接:https://www.haomeiwen.com/subject/oowzbctx.html