您还可以使用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在评论中所说,首选方法是Month
使用该LocalDate::getMonth
方法获取枚举对象。