我在 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);
我的 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);