0

实际上我是一个 .NET 人,我想知道为什么像处理日期/时间对象这样简单而琐碎的事情会如此复杂

我需要的一切都是一个对象,它包含日、月、年、小时、分钟、秒......的参数以及操纵这些值的可能性。

我不想转换到任何时区。参数的值应该已经设置好了!

问题 1:如何从分钟创建日期对象?问题 2:如何从 int 中创建日期对象?

我已经花了几个小时来完成它,我不敢相信我真的必须用 Java 创建我自己的 DateTime 实现!

我尝试使用 Calendar(GMC, UTC...) 和 Date 但始终相同。从我的 Date-TimePicker 获得的值将转换为夏令时或与我定义的日历相对应的其他规则。我真正想知道的一件事是,当我只使用“日期”对象时,我的时间也会发生变化......

干杯,斯特凡

4

3 回答 3

2
于 2020-02-08T07:15:08.773 回答
1

Date 和 Calendar 不是 Java 库中最好的 API(委婉地说,我认为它们是缺陷互补的),这就是为什么很多 Java 程序员都在使用Joda-Time并且许多人期待包含在标准分发中JSR-310,旧日期和日历混乱的全新替代品。Joda 的另一个好处是,在 Date 和 Joda 的类型之间转换非常容易(通过使用 .toDate() 或通过使用接受 Date 的相关构造函数),因此在代码中使用 Joda 的类型和在“外边缘”使用 Date与基于日期的代码交互的地方一点也不痛苦。

对于您的问题 2,仍然有一个接受 int 的 Date 构造函数,虽然它已被弃用,但您仍然可以使用它,请参阅此线程。但我只建议你在切换到 Joda 不适合你的情况下走这条路。

于 2013-02-02T15:43:57.360 回答
0

我建议您看一下 Joda Time,它的 java 日期设计正确。

于 2013-02-02T15:40:35.533 回答