• JodaTime的使用


      处理时间的场景在软件开发中很常见,JDK提供了Date和Calendar,然而这套API并不是很好用。这里推荐使用JodaTime来进行时间的处理。这里放上JodaTime的官网地址:https://www.joda.org/joda-time/

      Maven中央库中的依赖:

    <!-- https://mvnrepository.com/artifact/joda-time/joda-time -->
    <dependency>
        <groupId>joda-time</groupId>
        <artifactId>joda-time</artifactId>
        <version>2.9.9</version>
    </dependency>

      在官网中,我们大概看看它的包结构,会有如下介绍:

     

      大的功能划分基本在这个包结构中就能看出端倪。

      整个JodaTime核心类是DateTime,它是不可变的线程安全的,代表一个datetime类。有多种构造方法,如图所示:

      

      与jdk中常用的Date可以使用如下转换,用得比较多:

        DateTime dateTime = new DateTime(new Date().getTime());
        //Instance代表一个时间点,可以获取到Long型的时间戳     Date date
    = new Date(DateTime.now().toInstant().getMillis());

      获取到DateTime之后,可以进行plus或者minus操作,来获取未来一个时间点的DateTime或者过去某个时间点的DateTime。几个比较有代表性的方法示例:

            //注意格式
            DateTime parse = DateTime.parse("2020-12-21T01:23:21");
            //获取当前的时间对象
            DateTime dateTime = DateTime.now();
            //加1年
            dateTime.plusYears(1);
            //倒退21天
            dateTime.minusDays(21);

      另外,还可以获取到某个时间点是一个周期里的第几个单位,如:

            //获取当前的时间对象
            DateTime dateTime = DateTime.now();
            //获取今天是这个月的第几天
            int dayOfMonth = dateTime.dayOfMonth().get();
            //获取现在是今天的第几个小时
            int hourOfDay = dateTime.hourOfDay().get();
            //获取现在这个小时的第几分钟
            int minuteOfHour = dateTime.minuteOfHour().get();

      其它用法参考API中的详细文档。

      

  • 相关阅读:
    Pandas对于CSV的简单操作
    前端之BOM和DOM
    前端之JavaScript
    前端之CSS初识
    定时ping取返回值并绘图
    etree不存在解决方法
    内置方法练习(一)
    pip使用
    python变量、变量属性
    python 爬取段子网段子写入文件
  • 原文地址:https://www.cnblogs.com/bruceChan0018/p/14932904.html
Copyright © 2020-2023  润新知