小白写博客,大佬多指教!
① int是一个基本数据类型,Integer是int的封装类
赋值:int i=9;
对比:Integer i=new Integer(9);
看出来这是类与基本数据类型的区别
另外,在给Integer变量赋值的时候可以写成Integer i=9;等同于上面的赋值语句
,这就要牵扯到自装箱的概念,即编译器自动把这两条语句转换
拆箱:看两句代码就懂了,
Integer i=0;
//拆箱
int i=0;
拆箱的步骤是编译器自动完成的,这样对象就可以直接进行数值上的运算
Integer i=9;
system.out.println(++i); //答案是10
②既然是基本数据类型与类的区别:
int i; //初始值是0
Integer i;初始值是null
③讲一下为什么要给int 封装这个Integer类
比如泛型List <int>list=new List<int>
//这种写法是错误的,因为容器里只能装Object
List <Integer>list=new List<Integer> //正确