如何在 java 中获取给定月份和年份的最后日期
How to get the last date of given month and year in java
对于给定月份和年份的用户,我有以下格式的日期,例如02/15 MM/yy
格式。我想找到该月的最后一天,如果是闰年,它应该 return 29 否则不需要 return 28。谁能告诉我该怎么做?
在 Java 8 中,您可以执行以下操作:
private static final String DATE_PATTERN = "MM/yy";
public int getLastDayOfMonth(String dateString) {
DateTimeFormatter pattern = DateTimeFormatter.ofPattern(DATE_PATTERN);
YearMonth yearMonth = YearMonth.parse(dateString, pattern);
LocalDate date = yearMonth.atEndOfMonth();
return date.lengthOfMonth();
}
在 Java 的早期版本中,您可以:
public int getLastDayOfMonth(String dateString) throws ParseException {
DateFormat dateFormat = new SimpleDateFormat(DATE_PATTERN);
Calendar calendar = Calendar.getInstance();
calendar.setTime(dateFormat.parse(dateString));
return calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
}
对于给定月份和年份的用户,我有以下格式的日期,例如02/15 MM/yy
格式。我想找到该月的最后一天,如果是闰年,它应该 return 29 否则不需要 return 28。谁能告诉我该怎么做?
在 Java 8 中,您可以执行以下操作:
private static final String DATE_PATTERN = "MM/yy";
public int getLastDayOfMonth(String dateString) {
DateTimeFormatter pattern = DateTimeFormatter.ofPattern(DATE_PATTERN);
YearMonth yearMonth = YearMonth.parse(dateString, pattern);
LocalDate date = yearMonth.atEndOfMonth();
return date.lengthOfMonth();
}
在 Java 的早期版本中,您可以:
public int getLastDayOfMonth(String dateString) throws ParseException {
DateFormat dateFormat = new SimpleDateFormat(DATE_PATTERN);
Calendar calendar = Calendar.getInstance();
calendar.setTime(dateFormat.parse(dateString));
return calendar.getActualMaximum(Calendar.DAY_OF_MONTH);
}