Optional int parameter ‘xxx’ is present but cannot be
translated into a null value due to being declared as a primitive type.
可选的int参数“xxx”存在,但不能为空,由于被声明为基元类型而转换为空值。
所以一般采用采用包装类型来申明参数类型。
原因是在Interger和int的区别
(1)Integer是int的包装类;int是基本数据类型;
(2)Integer变量必须实例化后才能使用;int变量不需要;
(3)Integer实际是对象的引用,指向此new的Integer对象;int是直接存储数据值 ;
(4)Integer的默认值是null;int的默认值是0(int不可以为null)。
int与Integer的深入对比
(1)由于Integer变量实际上是对一个Integer对象的引用,所以两个通过new生成的Integer变量永远是不相等的(因为new生成的是两个对象,其内存地址不同)。
Integer i = new Integer(100);
Integer j = new Integer(100);
System.