对象是存储在Arrays.fill(Object [],Object)中数组的每个位置的同一个对象吗?

时间:2016-06-15 23:43:39

标签: java arrays object

我正在做一些我有这样代码的事情

Object[] array = new Object[10];
Arrays.fill(array, new Object());

我的问题是,array[0] == array[1]是真的还是array[0].equals(array[1])?或者换句话说,数组中的所有值是相同的确切对象还是等效对象?

1 个答案:

答案 0 :(得分:3)

Arrays.fill状态的javadoc:

  

将指定的Object引用分配给指定的Objects数组的每个元素。

因此,由于==比较引用,array[0]==array[1]将返回true。如果将equals定义为return false;,那么Arrays.fill甚至可以工作。