El método ArrayList.Clone() se usa para crear una copia superficial del ArrayList especificado . Una copia superficial de una colección copia solo los elementos de la colección, independientemente de los tipos de referencia o los tipos de valor. Pero no copia los objetos a los que se refieren las referencias. Las referencias en la nueva colección apuntan a los mismos objetos a los que apuntan las referencias en la colección original.
Sintaxis:
public virtual object Clone ();
Los siguientes programas ilustran el uso del método mencionado anteriormente:
Ejemplo 1:
// C# code to illustrate the use // of ArrayList.Clone Method using System; using System.Collections; public class GFG { // Main Method public static void Main(String[] args) { // Creating an empty ArrayList ArrayList list = new ArrayList(); // Use Add() method // to Add elements // in the list list.Add("Geeks"); list.Add("for"); list.Add("Geeks"); list.Add("10"); list.Add("20"); // Displaying the list Console.WriteLine("Elements of Original ArrayList: \n"); // Displaying the elements in ArrayList foreach(string str in list) { Console.WriteLine(str); } // Creating another ArrayList ArrayList sec_list = new ArrayList(); // using Clone() Method sec_list = (ArrayList)list.Clone(); // Displaying the Cloned ArrayList Console.WriteLine("\nElements of Cloned ArrayList: \n"); // Displaying the elements in ArrayList foreach(string str1 in sec_list) { Console.WriteLine(str1); } } }
Producción:
Elements of Original ArrayList: Geeks for Geeks 10 20 Elements of Cloned ArrayList: Geeks for Geeks 10 20
Ejemplo 2:
// C# code to illustrate the use // of ArrayList.Clone Method using System; using System.Collections; public class GFG { // Main Method public static void Main(String[] args) { // Creating an empty ArrayList ArrayList list = new ArrayList(); // Use Add() method // to Add elements // in the list list.Add(10); list.Add(20); list.Add(30); list.Add(40); list.Add(50); // Displaying the list Console.WriteLine("Elements of Original ArrayList: \n"); // calling function Result(list); // using Clone() method ArrayList sec_list = (ArrayList)list.Clone(); // Displaying the Cloned ArrayList Console.WriteLine("\nElements of Cloned ArrayList: \n"); // calling function Result(sec_list); // adding a new value to // original ArrayList list.Add(60); Console.WriteLine("\nAfter Adding, Original ArrayList: \n"); // Calling function Result(list); Console.WriteLine("\nAfter Adding, Cloned ArrayList: \n"); // Calling function Result(sec_list); // checking for the equality // of References list and sec_list Console.WriteLine("\nReference Equals: {0}", Object.ReferenceEquals(list, sec_list)); } // method to display the values public static void Result(ArrayList ar) { // This method prints all the // elements in the ArrayList. foreach(int i in ar) Console.WriteLine(i); } }
Producción:
Elements of Original ArrayList: 10 20 30 40 50 Elements of Cloned ArrayList: 10 20 30 40 50 After Adding, Original ArrayList: 10 20 30 40 50 60 After Adding, Cloned ArrayList: 10 20 30 40 50 Reference Equals: False
Referencia:
Publicación traducida automáticamente
Artículo escrito por Kirti_Mangal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA