Метод clone() класса Java ArrayList
Метод clone() используется для копирования ArrayList, и он относится к поверхностному копированию.
Дополнительно:
Поверхностное копирование копирует только указатель на объект, а не сам объект. Новый и старый объекты по-прежнему совместно используют одну и ту же память, поэтомуесли один из объектов изменит этот адрес, это повлияет на другой объект.。。
Аналогом поверхностного копирования является глубокое копирование. Глубокое копирование полностью копирует объект из памяти, выделяя новую область в куче для хранения нового объекта, иизменение нового объекта не повлияет на исходный объект.。
Синтаксис метода clone():
arraylist.clone()
Примечание:arraylist — это объект класса ArrayList.
Описание параметра:
- Отсутствует
Возвращаемое значение
Возвращает объект ArrayList.
Пример
Используйте метод clone() класса ArrayList для копирования ArrayList:
Пример
class Main {
public static void main(String[] args){
// Создать массив
ArrayList<String> sites = new ArrayList<>();
sites.add("Google");
sites.add("Example");
sites.add("Taobao");
System.out.println("Список сайтов: " + sites);
// Копировать sites
ArrayList<String> cloneSites = (ArrayList<String>)sites.clone();
System.out.println("复制的 ArrayList: " + cloneSites);
}
}
运行上述程序的输出是:
网站列表: [Google, Example, Taobao] 拷贝 ArrayList: [Google, Example, Taobao]
在上面的示例中,我们创建了一个名为 sites 的 ArrayList。请注意以下表达式:
(ArrayList<String>)sites.clone();
- sites.clone()- 返回复制后的 sites 对象
- (ArrayList <String>)- 将返回值转换为 String 类型的 ArrayList
输出 clone() 方法的返回值
Пример
class Main {
public static void main(String[] args){
// Создать массив
ArrayList<String> sites = new ArrayList<>();
sites.add("Google");
sites.add("Example");
sites.add("Taobao");
System.out.println("Список сайтов: " + sites);
// 输出 clone() 方法返回的值
System.out.println("clone() 返回值: " + sites.clone());
}
}
运行上述程序的输出是:
网站列表: [Google, Example, Taobao] clone() 返回值: [Google, Example, Taobao]
在上面的示例中,我们创建了一个名为 sites 的 ArrayList。这里我们输出 clone() 方法的返回值。
Примечание:Метод clone() не является специфическим методом класса ArrayList. Любой класс, который наследует интерфейс Cloneable, может использовать метод clone().
Другие расширения
Java ArrayList