java 128陷阱是出现在Integet自动装箱和自动拆箱中,在valueOf()方当中,在-128-127之间的数值都存储在有一个cache数组当中,该数组相当于一个缓存,当我们在-128-127之间进行自动装箱的时候,我们就直接返回该值在内存当中的地址,所以在-128-127之间的数值用==进行比较是相等的。而不在这个区间的数,需要新开辟一个内存空间,所以不相等,则会报错。
装箱:值类型—–>引用类型
拆箱:引用类型 —>值类型
为什么要有包装类:Java 中除了对象(引用类型)还有八大基本类型,它们不是对象。那么,为了把基本类型转换成对象,最简单的做法就是将基本类型作为一个类的属性保存起来,也就是把基本数据类型包装一下,这也就是包装类的由来