Duration包常用方法及示例

Posted 小蜗牛爱远行

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Duration包常用方法及示例相关的知识,希望对你有一定的参考价值。

package com.itranswarp.learnjava;

        import java.time.Duration;
        import java.time.LocalDateTime;
        import java.time.format.DateTimeFormatter;
        import java.time.temporal.ChronoUnit;

public class TimeTest 
    public static void main(String[] args) 
        String min = "2021-05-01 00:00:01";
        String max = "2021-05-31 23:59:59";
        LocalDateTime date = LocalDateTime.now();
        LocalDateTime start = LocalDateTime.parse(min, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
        LocalDateTime end = LocalDateTime.parse(max, DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"));
        Duration duration = Duration.between(start, end);
        System.out.println("获取两个对象间天数(一个月最大返回30):" + duration.toDays());
        //获取两个对象间天数(一个月最大返回30):30
        System.out.println("获取两个对象间小时:" + duration.toHours());
        //获取两个对象间小时(一个月最大返回):743
        System.out.println("返回此持续时间的副本,长度为正,获取秒数:" + duration.abs().getSeconds());
        //返回此持续时间,长度为正:2678398
        System.out.println("将此持续时间添加到指定的时态对象: " + duration.addTo(date));
        //将此持续时间添加到指定的时态对象: 2021-07-05T10:13:28.891
        /**
         * int compareTo(Duration otherDuration)
         * 将此持续时间与指定的持续时间进行比较
         *
         * boolean equals(Object otherDuration)
         * 检查此持续时间是否等于指定的持续时间。
         *
         * static Duratio from(TemporalAmount amount)
         * 从时间量获得持续时间的实例。
         *
         * static Duratio from(TemporalAmount amount)
         * 从时间量获得持续时间的实例。
         *
         * long get(TemporalUnit unit)
         * 获取所请求单元的值。
         *
         * int getNano()
         * 获取此持续时间内秒数内的纳秒数。
         *
         * List getUnits()
         * 获取此持续时间支持的单位集。
         *
         * int hashCode()
         * 此持续时间的哈希码。
         *
         * boolean isNegative()
         * 检查此持续时间是否为负,不包括零。
         *
         * boolean isZero()
         * 检查此持续时间是否为零长度。
         *
         * Duration minus(Duration duration)
         * 返回此持续时间的副本,并减去指定的持续时间。
         *
         * Duration minus(long amountToSubtract, TemporalUnit unit)
         * 返回此持续时间的副本,并减去指定的持续时间。
         *
         * Duration minusDays(long daysToSubtract)
         * 返回此持续时间的副本,并在标准的24小时内减去指定的持续时间。
         *
         * Duration minusHours(long hoursToSubtract)
         * 返回此持续时间的副本,并减去指定的持续时间(以小时为单位)。
         *
         * Duration minusMillis(long millisToSubtract)
         * 返回此持续时间的副本,并减去指定的持续时间(以毫秒为单位)。
         *
         * Duration minusMinutes(long minutesToSubtract)
         * 返回此持续时间的副本,并减去指定的持续时间(以分钟为单位)。
         *
         * Duration minusNanos(long nanosToSubtract)
         * 返回此持续时间的副本,并减去指定的持续时间(以纳秒为单位)。
         *
         * Duration minusSeconds(long secondsToSubtract)
         * 返回此持续时间的副本,并减去指定的持续时间(以秒为单位)。
         *
         * Duration multipliedBy(long multiplicand)
         * 返回此持续时间的副本乘以标量。
         *
         * Duration negated()
         * 返回此持续时间的副本,其长度为negated。
         *
         * Duration multipliedBy(long multiplicand)
         * 返回此持续时间的副本乘以标量。
         *
         * static Duration ofDays(long days)
         * 获得表示多个标准24小时工作日的持续时间。
         *
         * static Duration ofHours(long hours)
         * 获得表示多个标准小时的持续时间。
         *
         * static Duration ofMinutes(long minutes)
         * 获得表示多个标准分钟的持续时间。
         *
         * static Duration ofMillis(long millis)
         * 获得表示毫秒数的持续时间。
         *
         * static Duration ofNanos(long nanos)
         * 获得表示数纳秒的持续时间。
         *
         * static Duration ofSeconds(long seconds)
         * 获得表示秒数的持续时间。
         *
         * static Duration ofSeconds(long seconds, long nanoAdjustment)
         * 获得表示秒数的持续时间和以纳秒为单位的调整。
         *
         * static Duration parse(CharSequence text)
         * 从文本字符串(如PnDTnHnMn.nS)获取持续时间。
         *
         * Duration plus(Duration duration)
         * 返回此持续时间的副本,并添加指定的持续时间。
         *
         * Duration plus(long amountToAdd, TemporalUnit unit)
         * 返回此持续时间的副本,并添加指定的持续时间。
         *
         * Duration plusDays(long daysToAdd)
         * 返回此持续时间的副本,并在标准的24小时内添加指定的持续时间。
         *
         * Duration plusHours(long hoursToAdd)
         * 返回此持续时间的副本,并指定持续时间(以小时为单位)。
         *
         * Duration plusMillis(long millisToAdd)
         * 返回此持续时间的副本,其中包含指定的持续时间(以毫秒为单位)。
         *
         * Duration plusMinutes(long minutesToAdd)
         * 返回此持续时间的副本,并添加指定的持续时间(分钟)。
         *
         * Duration plusNanos(long nanosToAdd)
         * 返回此持续时间的副本,并添加指定的持续时间(以纳秒为单位)。
         *
         * Duration plusSeconds(long secondsToAdd)
         * 返回此持续时间的副本,并添加指定的持续时间(以秒为单位)
         *
         * Temporal subtractFrom(Temporal temporal)
         * 从指定的时态对象中减去此持续时间。
         *
         * long toMillis()
         * 将此持续时间转换为总长度(以毫秒为单位)。
         *
         * long toMinutes()
         * 获取此持续时间内的分钟数。
         *
         * long toNanos()
         * 将此持续时间转换为以纳秒为单位的总长度,表示为long。
         *
         * String toString()
         * 使用基于ISO-8601秒的表示形式的此持续时间的字符串表示形式,例如PT8H6M12.345S。
         *
         * Duration withNanos(int nanoOfSecond)
         * 使用指定的纳秒数返回此持续时间的副本。
         *
         * Duration withSeconds(long seconds)
         * 以指定的秒数返回此持续时间的副本。
         * */
    



以上是关于Duration包常用方法及示例的主要内容,如果未能解决你的问题,请参考以下文章

英语动词可分为多少种时态的形式

JQuery对表格进行操作的常用技巧总结

英语科技论文表述中常用的时态

英语语法时态示例

英语语法最终珍藏版笔记-3几个常用时态的比较

MySQL 常用插入语法总结