Phương thức Stack.CopyTo () trong C # được sử dụng để sao chép Ngăn xếp vào Mảng một chiều hiện có, bắt đầu từ chỉ mục mảng được chỉ định.
Cú pháp
Cú pháp như sau -
public virtual void CopyTo (Array arr, int index);
Ở trên, tham số arr là Mảng một chiều là đích của các phần tử được sao chép từ Stack, trong khi chỉ mục là chỉ mục mà tại đó bản sao bắt đầu.
Ví dụ
Bây giờ chúng ta hãy xem một ví dụ -
using System; using System.Collections; public class Demo { public static void Main(){ Stack stack = new Stack(); stack.Push(150); stack.Push(300); stack.Push(500); stack.Push(750); stack.Push(1000); stack.Push(1250); stack.Push(1500); stack.Push(2000); stack.Push(2500); Console.WriteLine("Stack elements..."); foreach(int val in stack){ Console.WriteLine(val); } Console.WriteLine("Count of elements = "+stack.Count); Console.WriteLine("Element 750 is the stack? = "+stack.Contains(750)); stack.Push(3000); Console.WriteLine("\nStack elements...updated"); foreach(int val in stack) { Console.WriteLine(val); } Console.WriteLine("Count of elements (updated) = "+stack.Count); Console.WriteLine("Element 5000 is the stack? = "+stack.Contains(5000)); Stack stack2 = (Stack)stack.Clone(); Console.WriteLine("\nStack elements...cloned"); foreach(int val in stack2){ Console.WriteLine(val); } Console.WriteLine("Count of elements (updated) = "+stack2.Count); Console.WriteLine("\nCopying the cloned stack to an integer array..."); int[] intArr = new int[stack2.Count]; stack2.CopyTo(intArr, 0); foreach(int j in intArr){ Console.WriteLine(j); } } }
Đầu ra
Điều này sẽ tạo ra kết quả sau -
Stack elements... 2500 2000 1500 1250 1000 750 500 300 150 Count of elements = 9 Element 750 is the stack? = True Stack elements...updated 3000 2500 2000 1500 1250 1000 750 500 300 150 Count of elements (updated) = 10 Element 5000 is the stack? = False Stack elements...cloned 3000 2500 2000 1500 1250 1000 750 500 300 150 Count of elements (updated) = 10 Copying the cloned stack to an integer array... 3000 2500 2000 1500 1250 1000 750 500 300 150
Ví dụ
Bây giờ chúng ta hãy xem một ví dụ khác -
using System; using System.Collections; public class Demo { public static void Main(){ Stack stack = new Stack(); stack.Push("Projectors"); stack.Push("Monitors"); stack.Push("XPS"); stack.Push("Laptop"); stack.Push("Notebook"); Console.WriteLine("Stack elements..."); foreach(string val in stack){ Console.WriteLine(val); } Console.WriteLine("Count of elements = "+stack.Count); Console.WriteLine("Element XPS is the stack? = "+stack.Contains("XPS")); stack.Push("Ultrabook"); Console.WriteLine("\nStack elements...updated"); foreach(string val in stack){ Console.WriteLine(val); } Console.WriteLine("Count of elements (updated) = "+stack.Count); Console.WriteLine("Element Ultrabook is the stack? = "+stack.Contains("Ultrabook")); Stack stack2 = (Stack)stack.Clone(); Console.WriteLine("\nStack elements...cloned"); foreach(string val in stack2){ Console.WriteLine(val); } Console.WriteLine("Count of elements (updated) = "+stack2.Count); Console.WriteLine("\nCopying the cloned stack to a string array..."); string[] strArr = new string[stack2.Count]; stack2.CopyTo(strArr, 0); foreach(string j in strArr){ Console.WriteLine(j); } } }
Đầu ra
Điều này sẽ tạo ra kết quả sau -
Stack elements... Notebook Laptop XPS Monitors Projectors Count of elements = 5 Element XPS is the stack? = True Stack elements...updated Ultrabook Notebook Laptop XPS Monitors Projectors Count of elements (updated) = 6 Element Ultrabook is the stack? = True Stack elements...cloned Ultrabook Notebook Laptop XPS Monitors Projectors Count of elements (updated) = 6 Copying the cloned stack to a string array... Ultrabook Notebook Laptop XPS Monitors Projectors