Java:从日期获取月份整数

新手上路,请多包涵

如何从 Date 对象( java.util.Date )中以整数形式获取月份?

原文由 Muhd 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 501
2 个回答

java.time (Java 8)

您还可以使用 Java 8 中的 java.time 包 并将您的 java.util.Date 对象转换为 java.time.LocalDate 对象,然后使用 getMonthValue() 方法。

 Date date = new Date();
LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
int month = localDate.getMonthValue();

请注意,此处给出的月份值从 1 到 12 与 cal.get(Calendar.MONTH) 在 adarshr 的答案中给出的值从 0 到 11 不同。

但正如 Basil Bourque 在评论中所说,首选方法是使用 LocalDate::getMonth 方法获取 Month 枚举对象。

原文由 Ortomala Lokni 发布,翻译遵循 CC BY-SA 3.0 许可协议

java.util.Date date= new Date();
Calendar cal = Calendar.getInstance();
cal.setTime(date);
int month = cal.get(Calendar.MONTH);

原文由 adarshr 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题