📅  最后修改于: 2023-12-03 14:39:21.172000             🧑  作者: Mango
在Java中,一个对象可以被多个变量引用。但是,当我们将一个对象添加到ArrayList中时,实际上是将对象的引用添加到ArrayList中。
如果我们将同一个对象的不同引用添加到ArrayList中,它们将被视为不同的对象,并且将分别占用ArrayList中的不同位置。
以下是一个示例程序来说明这一点:
public class Main {
public static void main(String[] args) {
// Create a new ArrayList
ArrayList<String> list = new ArrayList<>();
// Create a new object
String obj = new String("object");
// Add the object to the ArrayList twice
list.add(obj);
list.add(obj);
// Print the size of the ArrayList
System.out.println("ArrayList size: " + list.size());
// Print the toString() representation of the ArrayList
System.out.println("ArrayList contents: " + list.toString());
}
}
运行结果:
ArrayList size: 2
ArrayList contents: [object, object]
上面的代码将一个新的字符串对象添加到ArrayList中两次。但是,当我们打印ArrayList的大小和内容时,我们可以看到它们都是相同的对象。
因此,ArrayList可以包含对Java中同一对象的多个引用。但是,当我们添加多个引用时,它们将被视为不同的对象,并且将占用ArrayList中的不同位置。