java基础——int和Integer有什么区别

int是基本数据类型,直接存的是数值而Integer是对象,是一个引用只想这个对象

初始化:int i= 1;Integer i = new Integer(1);由于有了自动装箱以及拆箱,所以Integer i = 1;也是正确的

当需要网ArrayList,HashMap中放东西时,像int,double这种内建类型是无法放进去的,因为容器都是装object的,这时就需要这些内建类型的外覆类了。泛型定义时也不支持int。

1、int时基本的数据类型;2、Integer时int的封装类;3、int和Integer都可以表示一个数值;4、int和Integer不能够互用,因为他们两种不同的数据类型;

如果传入的int在IntegerCache.low和IntegerCache.high之间,那就尝试看前面的缓存中有没有打过包的相同的值,如果有就直接返回,否则就创建一个Integer实例。IntegerCache.low 默认是-128;IntegerCache.high默认是127.

你可能感兴趣的:(java基础——int和Integer有什么区别)