爪哇语中的最短日期

2022-08-31 16:49:06

Java 中的最小日期值是多少?


答案 1

不要忘记,Date 构造函数很乐意接受负值。

Date date = new Date(Long.MIN_VALUE);

返回

星期日 12月 02 22:47:04 BDT 292269055

我想那是大爆炸恐龙的时代:)

编辑

正如马丁·克莱顿(Martin Clayton)所回答的那样,您可以使用日历类来检查时代。这将输出 0,代表 BCE:

Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date(Long.MIN_VALUE));
System.out.println(calendar.get(Calendar.ERA));

答案 2

如果你正在谈论一个时间戳,你可以这样做java.util.Date

Date d = new Date(0L)你会看到这代表 星期四 一月 01 01:00:00 GMT 1970


正如 tulskiy 所指出的,可以将负值传递给 Date 构造函数。如果我们这样做并使用包含时代的日期格式,我们可以看到:

Date d = new Date(Long.MIN_VALUE);
DateFormat df = new SimpleDateFormat("EEE, d MMM yyyy G HH:mm:ss Z");
System.out.println(df.format(d));

显示: 星期日, 2 十二月 292269055 BC 16:47:04 +0000