带有 Joda 构造函数的 LocalDate 表示 The constructor LocalDate(int, int, int) is not visible

LocalDate with Joda constructor says The constructor LocalDate(int, int, int) is not visible

根据 Joda 中的文档:

 public LocalDate(int year,
   int monthOfYear,
   int dayOfMonth,
   Chronology chronology) 

应该采取上面我做的。我试图将 Chronology 设置为 null 但出现以下错误:

The constructor LocalDate(int, int, int, null) is undefined

但是我传递了正确的值,但据我了解,时间顺序为空意味着默认时区中的 ISOChronology。

因此,如何传递三个正确的 Integer 值并正确使用构造函数?

if (cit.hasNext()) {
                    cell = cit.next();
                    cell.setCellType(Cell.CELL_TYPE_NUMERIC);

                    if (DateUtil.isCellDateFormatted(cell))
                    {
                       SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
                       String cellValue = sdf.format(cell.getDateCellValue());

                       //System.out.println(cellValue);

                       //bufferDate is getting mm/dd/yyyy from excel cell
                       String[] dateSpliter = cellValue.split("/");
                       int month= Integer.parseInt(dateSpliter[0]);
                       int day= Integer.parseInt(dateSpliter[1]);
                       int year= Integer.parseInt(dateSpliter[2]);

                       _date = new LocalDate(year,month,day,null);

                       po.setDate(_date);               
                    } 

在我看来,您好像导入了错误的 class。

Java 8 java.time.LocalDate class 没有 public 构造函数,但它确实有一个私有构造函数,它接受三个 int 值。我认为这个 class 是你错误导入的,而你想要 org.joda.time.LocalDate 而不是。

我知道这个问题很老,但你可以写:

LocalDate date = LocalDate.of(int, int, int);

我希望有人会觉得这有用。