Integer是32位 取值范围在-2147483648到2147483648之间,在给Integer赋值时,实际上是自动装箱的过程,也就是调用了Integer.valueOf(int)方法,当这个值大于等于-128并且小于等于127时使用了常量池,如果超过了这个范围,则不适用常量池
意思是说 -128~127可以看成是整形int,对其判断可以使用 ==
128以上就不能当int类型,是对象,两个值相同的不同的对象如果用==判断肯定是不等的,可以用equals判断
切记!
Integer是32位 取值范围在-2147483648到2147483648之间,在给Integer赋值时,实际上是自动装箱的过程,也就是调用了Integer.valueOf(int)方法,当这个值大于等于-128并且小于等于127时使用了常量池,如果超过了这个范围,则不适用常量池
意思是说 -128~127可以看成是整形int,对其判断可以使用 ==
128以上就不能当int类型,是对象,两个值相同的不同的对象如果用==判断肯定是不等的,可以用equals判断
切记!