创建特定日期

虽然 Java Date 类有几个构造函数,但你会注意到大多数都被弃用了。直接创建 Date 实例的唯一可接受的方法是使用空构造函数或传入 long(自标准基准时间以来的毫秒数)。除非你正在寻找当前日期或已经有另一个 Date 实例,否则它们都不方便。

要创建新日期,你需要一个 Calendar 实例。从那里,你可以将 Calendar 实例设置为你需要的日期。

Calendar c = Calendar.getInstance();

这会将新的 Calendar 实例设置为当前时间。日历有很多方法可以改变它的日期和时间,或者直接设置它。在这种情况下,我们将其设置为特定日期。

c.set(1974, 6, 2, 8, 0, 0);
Date d = c.getTime();

getTime 方法返回我们需要的 Date 实例。请记住,Calendar set 方法只设置一个或多个字段,它们不会全部设置。也就是说,如果设置年份,其他字段保持不变。

陷阱

在许多情况下,此代码段实现了其目的,但请记住,未定义日期/时间的两个重要部分。

  • (1974, 6, 2, 8, 0, 0) 参数在默认时区内解释,在其他地方定义,
  • 毫秒不设置为零,但在创建 Calendar 实例时从系统时钟填充。