一起Talk Android吧(第四百三十一回:Java8中的日期类)

Posted talk_8

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一起Talk Android吧(第四百三十一回:Java8中的日期类)相关的知识,希望对你有一定的参考价值。

文章目录


各位看官们大家好,上一回中咱们说的例子是"Java8中的日期和时间概述",这一回中咱们说的例子是" Java8中的日期类"。闲话休提,言归正转,让我们一起Talk android吧!

在Java8中使用LocalDate类表示日期类,该类提供了许多方法来操作日期,接下来我们将详细这些方法。

获取日期

获取日期使用now()方法,不需要添加任何参数就可以获取到当前的日期,日期默认为年月日格式,而且是当前系统所在时区的日期。此方法是类的静态方法,直接调用就可以。

如果只想获取单独的年月日,可以使用getYear/Month等方法,这些方法是公有方法,需要创建日期类对象后才能使用。

修改日期

修改日期使用of()方法,把具体的日期当作参数传递给此方法就会生成LocalDate类日期对象。这个操作相当于修改了日期中的年月日。

如果只想单独修改年月日,可以使用withYear/Month等方法,这些方法是公有方法,需要创建日期类对象后才能使用。

日期比较

日期比较使用isBefore()方法,此方法的参数是日期类对象,它可以比较两个日期对象中日期的早与晚。

示例程序

  private void showDate() 
        // 获取当前日期
        LocalDate localDate = LocalDate.now();
        Log.d(TAG, "showDate: "+localDate.toString());

        //获取年、月、日
        Log.d(TAG, "showDate: Y: "+localDate.getYear()+" M: "+localDate.getMonth()+" D: "+localDate.getDayOfMonth());

        // 创建指定日期的LocalDate对象
        LocalDate ld = LocalDate.of(2023,1,2);
        Log.d(TAG, "showDate: 20230102: "+ld);

        //修改年、月、日,
        LocalDate localDateNew = LocalDate.now();
        localDateNew = localDateNew.withYear(2023).withMonth(2).withDayOfMonth(3);
        Log.d(TAG, "showDateNew: "+localDateNew.toString()+" originDate: "+localDate.toString());

        // 日期比较:JDK8之前只能是把日期转换成ms,然后对ms进行比较
        String compare = (localDateNew.isBefore(localDate))? "early ":"later ";
        Log.d(TAG, "showDate: "+localDateNew+" is "+compare+" then "+localDate);
    

看官们,上面是完整的示例程序,程序中添加有详细的注释,方便大家理解程序,我在这里就不演示程序运行结果了,希望大家自已动手去实践。

看官们,关于"Java8中的日期类"的例子咱们就介绍到这里,欲知后面还有什么例子,且听下回分解!

以上是关于一起Talk Android吧(第四百三十一回:Java8中的日期类)的主要内容,如果未能解决你的问题,请参考以下文章

一起Talk Android吧(第四百三十八回:如何合理地使用Dialog一)

一起Talk Android吧(第四百三十四回:Java8中的时区类)

一起Talk Android吧(第四百三十二回:Java8中的时间类)

一起Talk Android吧(第四百三十三回:Java8中的日期时间类)

一起Talk Android吧(第四百三十回:Java8中的日期和时间概述)

一起Talk Android吧(第四百三十五回:Java8中的时间戳类)