当前位置: 首页 > 面试题库 >

我们在Java中是否有TimeSpan类的类

焦宏硕
2023-03-14
问题内容

我只是想知道是否需要TimeSpan,java.util以便我可以定义两次之间的时,分,秒。

由此TimeSpan我们可以有两次之间的时间间隔。喜欢

TimeSpan getTimeSpan( Date before, Date after ){...}

要么

long timeSpan = System.currentTimeMillis();
// ... long job
timeSpan = System.currentTimeMillis() - timeSpan;

TimeSpan ts = new TimeSpan(timeSpan);

有了这个,TimeSpan我们就可以用它了SimpleDateFormat

SimpleDateFormat format = new SimpleDateFormat("HH:mm:ss");
format.format( timsSpan );

我不确定这是否已经在Java中实现但尚未被我发现。


问题答案:

借助SDK中的JDK 8日期时间库,您可以使用

Duration
要么 Period

Interval 来自JodaTime的会..

时间间隔表示两个时刻之间的时间段。间隔包括开始时刻,不包括结束。结束时刻始终大于或等于开始时刻。

间隔具有固定的毫秒持续时间。这是开始时刻和结束时刻之间的差异。持续时间由ReadableDuration单独表示。结果,间隔是不可比的。要比较两个间隔的长度,应该比较它们的持续时间。

间隔也可以转换为ReadablePeriod。这表示起点和终点之间的差异,例如年份和天数。

间隔是线程安全的并且是不变的。



 类似资料:
  • 本文向大家介绍我们是否必须在实现Java接口的类中实现所有方法?,包括了我们是否必须在实现Java接口的类中实现所有方法?的使用技巧和注意事项,需要的朋友参考一下 是的,必须在实现接口的类中实现所有方法,直到并且除非该类被声明为抽象类。 只有两个选择- 实现接口定义的每个方法。 将该类声明为抽象类,结果迫使您在创建任何对象之前先对该类进行子类化(并实现缺少的方法)。 类不需要在接口中实现所有方法的

  • 假设我正在初始化一个类obj,如下所示: 可以这样初始化吗?我的意思是我们像这样初始化字符串和基元值,但我指的是任何类。我们怎样才能得到它们,这样它们就可以用在同一个类的某个方法中呢?

  • 问题内容: 我们如何拥有一个在类内 可写 但在类外只能“读取” 的变量? 例如,不必这样做: 我想做这样的事情: 最好的解决方案是什么? 问题答案: 用Java无法做到这一点。 您的两个选项(您提到的一个)是使用公共获取程序并使字段私有,或在类中进行详尽的文档编制。 getter方法的开销非常小(如果有的话)。如果要执行大量操作,则可能要缓存获取的值,而不是调用get方法。 编辑: 实现此目标的一

  • 本文向大家介绍我们可以在Java中将顶级类声明为保护类还是私有类?,包括了我们可以在Java中将顶级类声明为保护类还是私有类?的使用技巧和注意事项,需要的朋友参考一下 不,我们不能将顶级类声明为private或protected。它可以是public 或default(没有修饰符)。如果它没有修饰符,则应该具有默认访问权限。 语法 如果将 顶级类声明为私有,则编译器将抱怨此处不允许使用修饰符pri

  • 问题内容: Java中是否有内置方法来查找任何数据类型的大小?有什么方法可以找到尺寸? 问题答案: 否。标准Java SE类库中没有这种方法。 设计者的观点是Java不需要它,因为该语言使应用程序1无需知道需要为原始值,对象或具有给定数量的元素的数组保留多少空间。 您可能会认为sizeof运算符对需要了解其数据结构占用多少空间的人很有用。但是,您还可以使用Java内存分析器简单,可靠地获得此信息以

  • 问题内容: 我进入字节和对象类型的函数消息数组,我需要从字节恢复对象。Java中是否有像C ++一样的类型转换? 问题答案: 不,您可以使用序列化。