Csharp/CSharp Tutorial/Data Structure/ArrayList ToArray

Материал из .Net Framework эксперт
Перейти к: навигация, поиск

Convert an ArrayList into an array

using System; 
using System.Collections; 
 
class MainClass { 
  public static void Main() { 
    ArrayList al = new ArrayList(); 
     
    // Add elements to the array list. 
    al.Add(1); 
    al.Add(2); 
    al.Add(3); 
    al.Add(4); 
 
    Console.Write("Contents: "); 
    foreach(int i in al) 
      Console.Write(i + " "); 
    Console.WriteLine(); 
 
    // Get the array. 
    int[] ia = (int[]) al.ToArray(typeof(int)); 
    int sum = 0; 
 
    // sum the array 
    for(int i=0; i<ia.Length; i++) 
      sum += ia[i]; 
 
    Console.WriteLine("Sum is: " + sum); 
  } 
}
Contents: 1 2 3 4
Sum is: 10

Convert user-defined objects in an ArrayList to an array

using System;
using System.Collections;
using System.Collections.Specialized;
class MyClass{
   public string MyName="";   
}
class MainClass
{
  static void Main(string[] args)
  {
    ArrayList classList = new ArrayList();
    classList.AddRange(new MyClass[] { new MyClass(), 
                                           new MyClass(), 
                                           new MyClass()});
    Console.WriteLine("Items in List: {0}", classList.Count);
       // Get object array from ArrayList & print again.
    object[] arrayOfMyClasss = classList.ToArray();
    for(int i = 0; i < arrayOfMyClasss.Length; i++)
    {
      Console.WriteLine("MyClass name: {0}", 
        ((MyClass)arrayOfMyClasss[i]).MyName);
    }
  }
}
Items in List: 3
MyClass name:
MyClass name:
MyClass name:

Use ArrayList.ToArray to create a strongly typed string array from the contents of the collection

using System;
using System.Collections;
class MainClass
{
    public static void Main(string[] args)
    {
        // Create a new ArrayList and populate it.
        ArrayList list = new ArrayList(5);
        list.Add("B");
        list.Add("G");
        list.Add("J");
        list.Add("S");
        list.Add("M");
        string[] array3 = (string[])list.ToArray(typeof(String));
        Console.WriteLine("Array 3:");
        foreach (string s in array3) 
        {
            Console.WriteLine("\t{0}", s);
        }
    }
}
Array 3:
        B
        G
        J
        S
        M