对象通过“==”比较的是对象内存地址
new的在堆里跟直接赋值不可能一样
Integer:
new:全都不一样
直接赋值:
[-128,127]之间时Integer a=1=Integer.valueOf(1)直接取缓存池的对象,多个会相等,范围外用new
与int比较时只比数字
String:
直接赋值:只比字面量,在String pool创建了一个对象,多个会相等
new String:创建两个对象
intern方法把字面量插入String pool返回引用
2022-11-27 12:43:30
对象通过“==”比较的是对象内存地址
new的在堆里跟直接赋值不可能一样
Integer:
new:全都不一样
直接赋值:
[-128,127]之间时Integer a=1=Integer.valueOf(1)直接取缓存池的对象,多个会相等,范围外用new
与int比较时只比数字
String:
直接赋值:只比字面量,在String pool创建了一个对象,多个会相等
new String:创建两个对象
intern方法把字面量插入String pool返回引用