我在 Netbeans 中对 Integer 进行了不必要的装箱

I get unnecessary boxing to Integer in Netbeans

我的 IDE 给出了对 Integer 不必要装箱的警告。

 // Custom
 double[] Cvalues = {18,1,0,0,17};
 methodParams.put(Integer.valueOf(this.getCustom()), Cvalues);

阅读有关自动装箱的 Java 教程,阅读教程后应该很明显 "Integer.valueOf(this.getCustom())" 是不必要的,只需调用 "this.getCustom()" 即可删除警告。

https://docs.oracle.com/javase/tutorial/java/data/autoboxing.html

如果你有 Map<Integer, Object> myMap 并且你做了类似的事情:

Map<Integer, Object> myMap = new HashMap<>();
myMap.put(Integer.valueOf(1), "A");
myMap.put(Integer.valueOf(10), "B");
myMap.put(Integer.valueOf(13), "C");

然后编译器将生成警告,因为不需要使用整数 class 进行包装...

足够做:

myMap.put(1, "A");
myMap.put(10, "B");
myMap.put(13, "C");

你的情况

methodParams.put(Integer.valueOf(this.getCustom()), Cvalues);

看起来 getCustom() 方法正在返回一个整数基元,使得基元的 boxing/wrapping 变得不必要。

就这样:

methodParams.put(getCustom(), Cvalues);