IntelliJ找不到LocalDate.of()方法

时间:2018-08-01 09:21:07

标签: java date intellij-idea

我正在做一个需要使用此行的程序

this.currentDay = new LocalDate.of(tmp.getYear(),tmp.getMonth(),1);

InteliJ找到.of并建议我使用它,这是我想做的。但是,当我单击它时,of变成红色,并且出现一个错误气泡,提示“无法解析符号”

对于上下文,有问题的功能在此类中

public class DayOfVacation {
  LocalDate currentDay;
  User user;
  Vacation vacation;

  public DayOfVacation(User user, Vacation vacation){
    LocalDate tmp = LocalDate.now();
    this.currentDay = new LocalDate.of(tmp.getYear(),tmp.getMonth(),1);

  }
}

2 个答案:

答案 0 :(得分:2)

调用静态LocalDate.of()方法时,不能使用new运算符。您的代码应为:

this.currentDay = LocalDate.of(tmp.getYear(), tmp.getMonth(), 1);

答案 1 :(得分:1)

因为您正在做new LocalDate.of(,所以Java中唯一可能的解释是您正在实例化位于{{1}内的名为of的内部类},它的构造函数带有三个参数。没有这样的事情,这就是为什么会出现错误的原因。

这不是内部类。这是一种静态方法。您必须删除LocalDate关键字。