使用 Java 中的当前年份从组合框中获取所选月份的开始日期和结束日期

Get the Start date and End date of a Selected month from a Combo box using current year in Java 7

我想从组合框中获取一个月的开始日期和结束日期 select。 组合框充满月份,如一月、二月..... 当我在组合框中 select 一个月时,我想获得该月与当年的开始和结束日期。 但在下面的代码中,年份是在文本框中指定的。但我想获得当年。不是来自文本框。 请帮我解决这个问题。 感谢提前。

这是我试过的代码

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());

当我在组合框中 select 月二月。我想要这样的输出

  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());