java中基本数据类型和包装类的区别
java中数据类型主要有两种:
1、基本的数据类型:long,int,byte,float,double,这些只是基本的数据类型,并不是对象
2、对象类型:Long,Integer,Byte,Float,Double以及其他所有的java对象
对于Interger和int,Integer是int的一个对象的封装,最简单版本的封装可以类似如下的封装
class Integer {
private int i;
public int intValue() {
return i;
}
}
由于int是数据类型而Integer是对象,因此,在初始化的时候,int类型初始化值为0, 而Integer初始化类型为null
对象类型在一些场合比较有用,比如map,set等容器,它里面的item需要为object,因此就没法直接把基本的数据类型add进去,这个时候,你就只能add Integer而不能add int
因此在对这两种类型进行选择时,如果我们只需要定义一个int类型的数,用来进行一些加减乘除的运算或者作为参数进行传递,那么就可以直接使用int
但如果需要像对象一样来进行处理,那么就要用Integer。