我想从组合框中选择一个月时获得一个月的开始日期和结束日期。组合框充满了月份,如一月,二月.....。当我在组合框中选择一个月份时,我想获取该年份的当年开始日期和结束日期。但是在下面的代码中,年份是在文本框中指定的。但我想得到今年。不是来自文本框。请帮我解决这个问题。感谢前进。
这是我尝试过的代码
cal.set(Calendar.MONTH, cmbMonth.getSelectionModel().getSelectedIndex());
int yearpart = Integer.parseInt(txtYear.getText());
int monthPart = cmbMonth.getSelectionModel().getSelectedIndex();
int dateDay = 1;
cal.set(yearpart, monthPart, dateDay);
int numOfDaysInMonth = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
System.out.println("Number of Days: " + numOfDaysInMonth);
System.out.println("First Day of month: " + cal.getTime());
cal.add(Calendar.DAY_OF_MONTH, numOfDaysInMonth-1);
System.out.println("Last Day of month: " + cal.getTime());
[当我在组合框中选择月份2月时。我想要这样的输出
First Day of month: 2019-02-1
Last Day of month: 2019-02-28
现在我得到了这种输出
First Day of month: Fri Feb 01 11:32:47 IST 2019
Last Day of month: Thur Feb 28 11:32:47 IST 2019
您可以使用YearMonth
:
int year = LocalDate.now().getYear();
String month = "January";
YearMonth yearMonth = YearMonth.of(year, Month.valueOf(month.toUpperCase()));
System.out.println(LocalDate.of(yearMonth.getYear(), yearMonth.getMonth(), 1));
System.out.println(yearMonth.atEndOfMonth());