public int getFreezeColumns() {
    Integer currentValue = (Integer) checkValueBinding("freezeColumns", this.freezeColumns);
    if (currentValue != null) {
      return currentValue;
    }
    return 0;
  }


FindBugs说:


  将原语装箱,然后立即取消装箱。这可能是由于在需要取消装箱的值的地方手动装箱,从而迫使编译器立即取消装箱的工作。


我该如何解决?

最佳答案

我认为投诉有些误导:您没有将checkValueBinding的返回值装箱,而该ObjectInteger,但是您过早将其转换为

尝试更改代码以查看它是否有助于避免警告:

public int getFreezeColumns() {
    Object currentValue = checkValueBinding("freezeColumns", this.freezeColumns);
    if (currentValue != null) {
        return (Integer)currentValue;
    }
    return 0;
}

10-08 00:02