此处,浅拷贝意味着它会创建 ArrayList 对象的副本。要了解更多关于浅拷贝的信息,请访问 Java 浅拷贝。
clone()
方法的语法是
arraylist.clone()
在这里,arraylist 是 对象 的 ArrayList 类的一个 对象。
clone() 参数
clone()
方法没有参数。
clone()返回值
- 返回 ArrayList 对象的副本
示例 1:创建 ArrayList 的副本
import java.util.ArrayList;
class Main {
public static void main(String[] args){
// create an arraylist
ArrayList<Integer> number = new ArrayList<>();
number.add(1);
number.add(3);
number.add(5);
System.out.println("ArrayList: " + number);
// create copy of number
ArrayList<Integer> cloneNumber = (ArrayList<Integer>)number.clone();
System.out.println("Cloned ArrayList: " + cloneNumber);
}
}
输出
ArrayList: [1, 3, 5] Cloned ArrayList: [1, 3, 5]
在上面的示例中,我们创建了一个名为 number 的 ArrayList。请注意表达式:
(ArrayList<Integer>)number.clone()
这里,
- number.clone() - 返回 number 对象的副本
- (ArrayList<Integer>) - 将
clone()
返回的值转换为Integer
类型的 ArrayList(要了解更多,请访问 Java 类型转换)
示例 2:打印 clone() 的返回值
import java.util.ArrayList;
class Main {
public static void main(String[] args){
// create an arraylist
ArrayList<Integer> prime = new ArrayList<>();
prime.add(2);
prime.add(3);
prime.add(5);
System.out.println("Prime Number: " + prime);
// print the return value of clone()
System.out.println("Return value of clone(): " + prime.clone());
}
}
输出
Prime Number: [2, 3, 5] Return value of clone(): [2, 3, 5]
在上面的示例中,我们创建了一个名为 prime 的 ArrayList。在这里,我们打印了 clone()
返回的值。
注意:clone()
方法不特定于 ArrayList
类。任何实现 Clonable
接口的类都可以使用 clone()
方法。