在Java中设置持续时间的适当方法

在Java中设置持续时间的适当方法,java,datetime,types,duration,Java,Datetime,Types,Duration,使用标准Java libs在Java中设置持续时间的适当方法是什么?日期()?日历()?例子 谢谢,干杯 ERJava日期和时间有一个事实上的标准—JodaTime。是的。JodaTime API被认为远远优于日期和日历 当然,您也可以将持续时间存储为长的——毫秒。Java日期和时间实际上有一个标准-JodaTime。是的。JodaTime API被认为远远优于日期和日历 当然,您也可以使用Java-8标准库将持续时间存储在long-毫秒中。 是仿照的,并作为的一部分引入 快速演示: impor

使用标准Java libs在Java中设置持续时间的适当方法是什么?日期()?日历()?例子

谢谢,干杯
ER

Java日期和时间有一个事实上的标准—JodaTime。是的。JodaTime API被认为远远优于
日期
日历


当然,您也可以将持续时间存储为
长的
——毫秒。

Java日期和时间实际上有一个标准-JodaTime。是的。JodaTime API被认为远远优于
日期
日历

当然,您也可以使用Java-8标准库将持续时间存储在
long
-毫秒中。

是仿照的,并作为的一部分引入

快速演示:

import java.time.Duration;
import java.time.LocalTime;

public class Main {
    public static void main(String[] args) {
        System.out.println(Duration.ofNanos(1234567890));
        System.out.println(Duration.ofMillis(123456789));
        System.out.println(Duration.ofSeconds(12345678));
        System.out.println(Duration.ofMinutes(1234567));
        System.out.println(Duration.ofHours(123456));
        System.out.println(Duration.ofDays(12345));

        System.out.println(Duration.between(LocalTime.of(1, 2, 3), LocalTime.of(4, 5, 6)));
    }
}
PT1.23456789S
PT34H17M36.789S
PT3429H21M18S
PT20576H7M
PT123456H
PT296280H
PT3H3M3S
输出:

import java.time.Duration;
import java.time.LocalTime;

public class Main {
    public static void main(String[] args) {
        System.out.println(Duration.ofNanos(1234567890));
        System.out.println(Duration.ofMillis(123456789));
        System.out.println(Duration.ofSeconds(12345678));
        System.out.println(Duration.ofMinutes(1234567));
        System.out.println(Duration.ofHours(123456));
        System.out.println(Duration.ofDays(12345));

        System.out.println(Duration.between(LocalTime.of(1, 2, 3), LocalTime.of(4, 5, 6)));
    }
}
PT1.23456789S
PT34H17M36.789S
PT3429H21M18S
PT20576H7M
PT123456H
PT296280H
PT3H3M3S
使用Java-8标准库从

了解现代日期时间API 是仿照的,并作为的一部分引入

快速演示:

import java.time.Duration;
import java.time.LocalTime;

public class Main {
    public static void main(String[] args) {
        System.out.println(Duration.ofNanos(1234567890));
        System.out.println(Duration.ofMillis(123456789));
        System.out.println(Duration.ofSeconds(12345678));
        System.out.println(Duration.ofMinutes(1234567));
        System.out.println(Duration.ofHours(123456));
        System.out.println(Duration.ofDays(12345));

        System.out.println(Duration.between(LocalTime.of(1, 2, 3), LocalTime.of(4, 5, 6)));
    }
}
PT1.23456789S
PT34H17M36.789S
PT3429H21M18S
PT20576H7M
PT123456H
PT296280H
PT3H3M3S
输出:

import java.time.Duration;
import java.time.LocalTime;

public class Main {
    public static void main(String[] args) {
        System.out.println(Duration.ofNanos(1234567890));
        System.out.println(Duration.ofMillis(123456789));
        System.out.println(Duration.ofSeconds(12345678));
        System.out.println(Duration.ofMinutes(1234567));
        System.out.println(Duration.ofHours(123456));
        System.out.println(Duration.ofDays(12345));

        System.out.println(Duration.between(LocalTime.of(1, 2, 3), LocalTime.of(4, 5, 6)));
    }
}
PT1.23456789S
PT34H17M36.789S
PT3429H21M18S
PT20576H7M
PT123456H
PT296280H
PT3H3M3S

了解现代日期时间API谢谢,我了解Joda,但是,我想知道如何用标准库表示持续时间…O。。。“长”是我更喜欢的。我只是想确保这是标准LIB的最佳实践。long,甚至int,都很好!不要使用
long
。迟早有人会怀疑他们是秒还是毫秒或者其他什么,并且会浪费时间去找出答案。此外,现在不要用Joda时间编写新代码,它已经过时了。一定要使用
java.time.Duration
。请看另一个答案。谢谢,我知道Joda,但是,我想知道如何用标准库表示持续时间。。。“长”是我更喜欢的。我只是想确保这是标准LIB的最佳实践。long,甚至int,都很好!不要使用
long
。迟早有人会怀疑他们是秒还是毫秒或者其他什么,并且会浪费时间去找出答案。此外,现在不要用Joda时间编写新代码,它已经过时了。一定要使用
java.time.Duration
。请看另一个答案。