似乎SonarLint认为Collections.singletonList
是可变的,即使列表中的值是不可变的。这是一个错误,还是规则不够智能,无法检查列表类型的可变性?
public static final List<String> STRING_LIST = Collections.singletonList("myString");
相反,即使列表中的值是可变的,使用Collections.immutableList
似乎也会使此错误无效。
public static final List<Point> POINTS = Collections.unmodifiableList(Collections.singletonList(new Point(1, 2)));
以上运行SonarQube 6.2。