Java 特定年份的特定月份的天数?
如何知道特定年份的特定月份有多少天?
String date = "2010-01-19";String[] ymd = date.split("-");
int year = Integer.parseInt(ymd[0]);
int month = Integer.parseInt(ymd[1]);
int day = Integer.parseInt(ymd[2]);
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR,year);
calendar.set(Calendar.MONTH,month);
int daysQty = calendar.getDaysNumber(); // Something like this
回答:
Java 8及更高版本
@沃伦·诺科斯(Warren M. 如果你尝试使用Java 8的新Date and Time API,则可以使用java.time.YearMonthclass。请参阅Oracle教程。
// Get the number of days in that monthYearMonth yearMonthObject = YearMonth.of(1999, 2);
int daysInMonth = yearMonthObject.lengthOfMonth(); //28
测试:尝试a年的一个月:
yearMonthObject = YearMonth.of(2000, 2);daysInMonth = yearMonthObject.lengthOfMonth(); //29
Java 7及更早版本
创建日历,设置年份和月份并使用 getActualMaximum
int iYear = 1999;int iMonth = Calendar.FEBRUARY; // 1 (months begin with 0)
int iDay = 1;
// Create a calendar object and set year and month
Calendar mycal = new GregorianCalendar(iYear, iMonth, iDay);
// Get the number of days in that month
int daysInMonth = mycal.getActualMaximum(Calendar.DAY_OF_MONTH); // 28
测试:尝试a年的一个月:
mycal = new GregorianCalendar(2000, Calendar.FEBRUARY, 1);daysInMonth= mycal.getActualMaximum(Calendar.DAY_OF_MONTH); // 29
以上是 Java 特定年份的特定月份的天数? 的全部内容, 来源链接: utcz.com/qa/414176.html