ArrayList.CopyTo(Array) ওভারলোড ব্যবহার করে ArrayList-এর সব উপাদান একটি একমাত্রি অ্যারেতে কপি করা যায়। এই ওভারলোডে ডিফল্টভাবে সূচক ০ থেকে কপি শুরু হয়। লক্ষ্য অ্যারেতে ArrayList.Count-এর সমান বা বড় আকার থাকতে হবে।
উদাহরণ ১: স্ট্রিং ArrayList থেকে String[]-এ কপি
using System;
using System.Collections;
public class Demo {
public static void Main() {
ArrayList list = new ArrayList();
list.Add("AB");
list.Add("BC");
list.Add("CD");
list.Add("EF");
list.Add("GH");
list.Add("IJ");
list.Add("KL");
list.Add("MN");
String[] strArr = new String[10];
Console.WriteLine("ArrayList...");
foreach(Object obj in list) {
Console.WriteLine("{0}", obj);
}
list.CopyTo(strArr);
Console.WriteLine("\nArrayList থেকে কপি করার পর String Array...");
foreach(Object ob in strArr) {
Console.WriteLine("{0}", ob);
}
}
}
আউটপুট
ArrayList... AB BC CD EF GH IJ KL MN ArrayList থেকে কপি করার পর String Array... AB BC CD EF GH IJ KL MN
উদাহরণ ২: ইন্টিজার ArrayList থেকে int[]-এ কপি
using System;
using System.Collections;
public class Demo {
public static void Main() {
ArrayList list = new ArrayList();
list.Add(100);
list.Add(200);
list.Add(300);
list.Add(400);
list.Add(500);
list.Add(600);
list.Add(700);
list.Add(800);
list.Add(900);
list.Add(1000);
int[] intArr = new int[10];
Console.WriteLine("ArrayList...");
foreach(Object obj in list) {
Console.WriteLine("{0}", obj);
}
list.CopyTo(intArr);
Console.WriteLine("\nArrayList থেকে কপি করার পর Integer Array...");
foreach(Object ob in intArr) {
Console.WriteLine("{0}", ob);
}
}
}
আউটপুট
ArrayList... 100 200 300 400 500 600 700 800 900 1000 ArrayList থেকে কপি করার পর Integer Array... 100 200 300 400 500 600 700 800 900 1000
দ্রষ্টব্য: এই CopyTo ওভারলোডে অ্যারে টাইপ ArrayList-এর উপাদান টাইপের সাথে কম্প্যাটিবল হতে হবে। নন-जেনেরিক ArrayList-এর বদলে জেনেরিক List<T> ব্যবহার করা আরও টাইপ-সেফ এবং দক্ষ।