当我们在main方法中打印新的int [] {2}时,我们将得到哈希码[I @ 138a55? int数组是否会覆盖hashcode? 是因为new int []自动框是Integer []吗? 原因是什么?
答案 0 :(得分:8)
[I
是在getClass().getName ()
上执行时int[]
的输出。另一方面,对于Integer[]
,您在致电[Ljava.lang.Integer;
时会获得getClass().getName ()
。
int[]
数组未自动装箱到Integer[]
。
[I@138a55
不是数组的哈希码,只有138a55
部分是数组哈希码的十六进制表示。
int
数组不会覆盖Object
hashCode()
的默认实现。