Java ArrayList clone() 方法

定义和用法

clone() 方法返回作为 ObjectArrayList 副本。

这个方法创建的是一个“浅拷贝”,意味着列表中的对象本身并没有被复制,而是新列表持有对原列表中相同对象的引用。

注意:由于返回类型是 Object,因此为了将其作为 ArrayList 使用,必须进行类型转换,如下面的例子所示。

相关页面

教程:Java 数组

教程:Java ArrayList

实例

创建一个列表的副本:

import java.util.ArrayList;

public class Main {
  public static void main(String[] args) {
    ArrayList<String> cars = new ArrayList<String>();
    cars.add("Volvo");
    cars.add("BMW");
    cars.add("Ford");
    cars.add("Mazda");
    
    // 注意这里需要进行类型转换
    ArrayList<String> cars2 = (ArrayList<String>)cars.clone();
    cars2.set(0, "Toyota");
    
    System.out.println(cars);  // 输出:[Volvo, BMW, Ford, Mazda]
    System.out.println(cars2); // 输出:[Toyota, BMW, Ford, Mazda]
  }
}

亲自试一试

语法

public Object clone()

技术细节

返回: ArrayList 对象的副本。