Java中(Integer)127 == (Integer)127和(Integer)129 == (Integer)129表达式
哲理有个大家容易忽视的问题
127就是true 129就是false
java堆堆integer做了缓存,范围是-128~127
129越界,需要去重新分配
我的问题是:为甚么做了缓存就是同一个对象了
Java中(Integer)127 == (Integer)127和(Integer)129 == (Integer)129表达式
哲理有个大家容易忽视的问题
127就是true 129就是false
java堆堆integer做了缓存,范围是-128~127
129越界,需要去重新分配
我的问题是:为甚么做了缓存就是同一个对象了
在-128~127范围内会自定拆箱,这时会直接从常量池中去取这个数,而在常量池中没有重复,相同的数只存在一个,所以地址一样的