java 128陷阱是出现在Integet自动装箱和自动拆箱中,在valueOf()方当中,在-128-127之间的数值都存储在有一个cache数组当中,该数组相当于一个缓存,当我们在-128-127之间进行自动装箱的时候,我们就直接返回该值在内存当中的地址,所以在-128-127之间的数值用==进行比较是相等的。而不在这个区间的数,需要新开辟一个内存空间,所以不相等,则会报错。
装箱:值类型—–>引用类型
拆箱:引用类型 —>值类型
为什么要有包装类:Java 中除了对象(引用类型)还有八大基本类型,它们不是对象。那么,为了把基本类型转换成对象,最简单的做法就是将基本类型作为一个类的属性保存起来,也就是把基本数据类型包装一下,这也就是包装类的由来
Java Integer缓存机制
本文详细解析了Java中Integer自动装箱和拆箱的过程,特别是针对-128到127之间的整数如何利用缓存提高效率。通过了解这个机制,读者可以更好地掌握Java内存管理和性能优化的相关知识。
125

被折叠的 条评论
为什么被折叠?



