关于Integer的小tip
用Integer创建新对象时,赋值不超过byte范围且在此之前内存中已有取值想同的Integer对象,则不会为它再开辟新空间。
package String;
public class Warming_Integer {
public static void main(String[] args) {
Integer a = 128;
Integer b = 128;
Integer m = 127;
Integer n = 127;
String_tools.sop("a==b吗?",a==b);//false
/*
* true,因为m,n指向同一对象(内存中只存在一个127),
* JDK1.5以后新特性,对于数据在byte(<=127)范围内的已经存在的数就不再开辟新空间
*/
String_tools.sop("m==n吗?",m==n);
}
}