Csharp/C Sharp by API/System.Collections/ArrayList

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

ArrayList.Add

<source lang="csharp">

using System; using System.Collections; using System.Collections.Generic; using System.Text; class Program {

   static void Main(string[] args) {
       ArrayList baseballTeams = new ArrayList();
       baseballTeams.Add("S");
       baseballTeams.Add("r");
       baseballTeams.Add("F");
       string[] myStringArray = new string[2];
       myStringArray[0] = "G";
       myStringArray[1] = "L";
       baseballTeams.AddRange(myStringArray);
       foreach (string item in baseballTeams) {
           Console.Write(item + "\n");
       }
   }

}


 </source>


ArrayList.AddRange

<source lang="csharp"> 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);
   // Print out current values. 
   foreach(MyClass c in classList)
   {
     Console.WriteLine("MyClass name: {0}", c.MyName);  
   }
 }

}


 </source>


ArrayList.BinarySearch

<source lang="csharp"> using System; using System.Collections; class Album : IComparable, ICloneable {

   private string _Title;
   private string _Artist;
   public Album(string artist, string title) {
       _Artist = artist;
       _Title = title;
   }
   public string Title {
       get {
           return _Title;
       }
       set {
           _Title = value;
       }
   }
   public string Artist {
       get {
           return _Artist;
       }
       set {
           _Artist = value;
       }
   }
   public override string ToString() {
       return _Artist + ",\t" + _Title;
   }
   public int CompareTo(object o) {
       Album other = o as Album;
       if (other == null)
           throw new ArgumentException();
       if (_Artist != other._Artist)
           return _Artist.rupareTo(other._Artist);
       else
           return _Title.rupareTo(other._Title);
   }
   public object Clone() {
       return new Album(_Artist, _Title);
   }

} class TitleComparer : IComparer {

   public int Compare(object l, object r) {
       Album left = l as Album;
       Album right = r as Album;
       if ((left == null) || (right == null))
           throw new ArgumentException();
       if (left.Title != right.Title)
           return left.Title.rupareTo(right.Title);
       else
           return left.Artist.rupareTo(right.Artist);
   }

} class Class1 {

   static void Main(string[] args) {
       ArrayList arr = new ArrayList();
       arr.Add(new Album("G", "A"));
       arr.Add(new Album("B", "G"));
       arr.Add(new Album("S", "A"));
       arr.Sort();
  
       try {
           foreach (Album a in arr) {
               Console.WriteLine(a);
           }
       } catch (System.InvalidCastException e) {
       }
       arr.Sort(new TitleComparer());
       foreach (Album a in arr) {
           Console.WriteLine(a);
       }
       Album l = new Album("L", "G");
       arr.Sort();
       int index = arr.BinarySearch(l);
       Console.WriteLine(index.ToString());
       arr.Sort(new TitleComparer());
       index = arr.BinarySearch(l, new TitleComparer());
       Console.WriteLine(index.ToString());
   }

}


 </source>


ArrayList.Capacity

<source lang="csharp"> using System; using System.Collections;

public class ArrayListDemo {

 public static void Main() { 
   ArrayList al = new ArrayList(); 
    
   Console.WriteLine("Initial capacity: " + al.Capacity); 
   Console.WriteLine("Initial number of elements: " + al.Count); 

   Console.WriteLine(); 

   Console.WriteLine("Adding 6 elements"); 
   // Add elements to the array list 
   al.Add("C"); 
   al.Add("A"); 
   al.Add("E"); 
   al.Add("B"); 
   al.Add("D"); 
   al.Add("F"); 

   Console.WriteLine("Current capacity: " + 
                      al.Capacity); 
   Console.WriteLine("Number of elements: " + 
                      al.Count); 

   // Display the array list using array indexing. 
   Console.Write("Current contents: "); 
   for(int i=0; i < al.Count; i++) 
     Console.Write(al[i] + " "); 
   Console.WriteLine("\n"); 

   Console.WriteLine("Removing 2 elements"); 
   // Remove elements from the array list. 
   al.Remove("F"); 
   al.Remove("A"); 

   Console.WriteLine("Current capacity: " + 
                      al.Capacity); 
   Console.WriteLine("Number of elements: " + 
                      al.Count); 

   // Use foreach loop to display the list. 
   Console.Write("Contents: "); 
   foreach(char c in al) 
     Console.Write(c + " "); 
   Console.WriteLine("\n"); 

   Console.WriteLine("Adding 20 more elements"); 
   // Add enough elements to force al to grow. 
   for(int i=0; i < 20; i++) 
     al.Add((char)("a" + i)); 
   Console.WriteLine("Current capacity: " + 
                      al.Capacity); 
   Console.WriteLine("Number of elements after adding 20: " + 
                      al.Count); 
   Console.Write("Contents: "); 
   foreach(char c in al) 
     Console.Write(c + " "); 
   Console.WriteLine("\n"); 

   // Change contents using array indexing. 
   Console.WriteLine("Change first three elements"); 
   al[0] = "X"; 
   al[1] = "Y"; 
   al[2] = "Z"; 
   Console.Write("Contents: "); 
   foreach(char c in al) 
     Console.Write(c + " "); 
   Console.WriteLine(); 
 } 

}


 </source>


ArrayList.Clear()

<source lang="csharp"> using System; using System.Collections; class MainClass {

 static void Main(string[] args)
 {
   ArrayList a = new ArrayList(10);
   int x = 0;
   a.Add( ++x);
   a.Add( ++x);
   a.Add( ++x);
   a.Add( ++x);
   a.Remove(x);
   
   a.RemoveAt(0);
   a.Clear();
 }

}


 </source>


ArrayList.Clone

<source lang="csharp"> using System; using System.Collections; public class Starter {

   public static void Main(string[] argv) {
       ArrayList al1 = new ArrayList();
       foreach (string arg in argv) {
           al1.Add(int.Parse(arg));
       }
       al1.Sort();
       ArrayList al2 = (ArrayList)al1.Clone();
       for (int count = 0; count < al2.Count; ++count) {
           al2[count] = ((int)al2[count]) * 2;
       }
       foreach (int number in al2) {
           Console.WriteLine(number);
       }
   }

}


 </source>


ArrayList.Contains

<source lang="csharp">

using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.SetRange(0, anotherStringArray);
   if (myArrayList.Contains("text"))
   {
     int index = myArrayList.IndexOf("text");
     Console.WriteLine("myArrayList does contain the word "text"");
     Console.WriteLine(""text" first occurs at index " + index);
     index = myArrayList.LastIndexOf("text");
     Console.WriteLine(""text" last occurs at index " + index);
   }
 }

}

 </source>


ArrayList.CopyTo

<source lang="csharp"> 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[] array1 = new string[list.Count];
       list.CopyTo(array1, 0);
       Console.WriteLine("Array 1:");
       foreach (string s in array1) 
       { 
           Console.WriteLine("\t{0}",s); 
       }
   
   }

}


 </source>


ArrayList.GetEnumerator()

<source lang="csharp"> using System; using System.Collections;

class MainClass {

 public static void Main() { 
   ArrayList list = new ArrayList(1); 

   for(int i=0; i < 10; i++) 
     list.Add(i); 

   IEnumerator etr = list.GetEnumerator(); 
   while(etr.MoveNext())  
     Console.Write(etr.Current + " "); 

   Console.WriteLine(); 

    
   etr.Reset(); 
   while(etr.MoveNext())  
     Console.Write(etr.Current + " "); 

   Console.WriteLine(); 
 } 

}


 </source>


ArrayList.GetRange

<source lang="csharp"> using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.SetRange(0, anotherStringArray);
   ArrayList anotherArrayList = myArrayList.GetRange(1, 2);
   DisplayArrayList("anotherArrayList", anotherArrayList);
 }
 public static void DisplayArrayList(string arrayListName, ArrayList myArrayList)
 {
   for (int i = 0; i < myArrayList.Count; i++){
     Console.WriteLine(arrayListName + "[" + i + "] = " +
       myArrayList[i]);
   }
 }

}

 </source>


ArrayList.IndexOf

<source lang="csharp">

using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.SetRange(0, anotherStringArray);
   if (myArrayList.Contains("text"))
   {
     int index = myArrayList.IndexOf("text");
     Console.WriteLine("myArrayList does contain the word "text"");
     Console.WriteLine(""text" first occurs at index " + index);
     index = myArrayList.LastIndexOf("text");
     Console.WriteLine(""text" last occurs at index " + index);
   }
 }

}

 </source>


ArrayList.Insert

<source lang="csharp"> 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);
   classList.Insert(2, new MyClass());
   Console.WriteLine("Items in classList: {0}", classList.Count);
   // Print out current values. 
   foreach(MyClass c in classList)
   {
     Console.WriteLine("MyClass name: {0}", c.MyName);  
   }
 }

}


 </source>


ArrayList.InsertRange()

<source lang="csharp"> using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   
   myArrayList.Add("is");
   myArrayList.Insert(1, "is");
   string[] myStringArray = {"a", "test"};
   myArrayList.AddRange(myStringArray);
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.InsertRange(myArrayList.Count, anotherStringArray);
   DisplayArrayList("myArrayList", myArrayList);
 }
 public static void DisplayArrayList(string arrayListName, ArrayList myArrayList)
 {
   for (int i = 0; i < myArrayList.Count; i++){
     Console.WriteLine(arrayListName + "[" + i + "] = " +
       myArrayList[i]);
   }
 }
 

}


 </source>


ArrayList.IsFixedSize

<source lang="csharp">

using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   
   Console.WriteLine("myArrayList.IsFixedSize = " + myArrayList.IsFixedSize);
   Console.WriteLine("myArrayList.IsReadOnly = " + myArrayList.IsReadOnly);
 }

}


 </source>


ArrayList.IsReadOnly

<source lang="csharp">

using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   
   Console.WriteLine("myArrayList.IsFixedSize = " + myArrayList.IsFixedSize);
   Console.WriteLine("myArrayList.IsReadOnly = " + myArrayList.IsReadOnly);
 }

}


 </source>


ArrayList.LastIndexOf

<source lang="csharp">

using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.SetRange(0, anotherStringArray);
   if (myArrayList.Contains("text"))
   {
     int index = myArrayList.IndexOf("text");
     Console.WriteLine("myArrayList does contain the word "text"");
     Console.WriteLine(""text" first occurs at index " + index);
     index = myArrayList.LastIndexOf("text");
     Console.WriteLine(""text" last occurs at index " + index);
   }
 }

}

 </source>


ArrayList.Remove

<source lang="csharp">

using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.SetRange(0, anotherStringArray);
   myArrayList.RemoveAt(0);
   myArrayList.Remove("text");
   myArrayList.RemoveRange(3, 2);
   DisplayArrayList("myArrayList", myArrayList);
 }
 public static void DisplayArrayList(string arrayListName, ArrayList myArrayList)
 {
   for (int i = 0; i < myArrayList.Count; i++){
     Console.WriteLine(arrayListName + "[" + i + "] = " +
       myArrayList[i]);
   }
 }

}

 </source>


ArrayList.RemoveAt

<source lang="csharp"> using System; using System.Collections; class MainClass {

 static void Main(string[] args)
 {
   ArrayList a = new ArrayList(10);
   int x = 0;
   a.Add( ++x);
   a.Add( ++x);
   a.Add( ++x);
   a.Remove(x);
   
   a.RemoveAt(0);
 }

}


 </source>


ArrayList.RemoveRange

<source lang="csharp">

using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.SetRange(0, anotherStringArray);
   myArrayList.RemoveAt(0);
   myArrayList.Remove("text");
   myArrayList.RemoveRange(3, 2);
   DisplayArrayList("myArrayList", myArrayList);
 }
 public static void DisplayArrayList(string arrayListName, ArrayList myArrayList)
 {
   for (int i = 0; i < myArrayList.Count; i++){
     Console.WriteLine(arrayListName + "[" + i + "] = " +
       myArrayList[i]);
   }
 }

}

 </source>


ArrayList.Reverse()

<source lang="csharp"> using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.SetRange(0, anotherStringArray);
   myArrayList.Reverse();
   DisplayArrayList("myArrayList", myArrayList);
 }
 public static void DisplayArrayList(string arrayListName, ArrayList myArrayList)
 {
   for (int i = 0; i < myArrayList.Count; i++){
     Console.WriteLine(arrayListName + "[" + i + "] = " +
       myArrayList[i]);
   }
 }

}

 </source>


ArrayList.SetRange

<source lang="csharp"> using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.SetRange(0, anotherStringArray);
   DisplayArrayList("myArrayList", myArrayList);
 }
 public static void DisplayArrayList(string arrayListName, ArrayList myArrayList)
 {
   for (int i = 0; i < myArrayList.Count; i++){
     Console.WriteLine(arrayListName + "[" + i + "] = " +
       myArrayList[i]);
   }
 }
 

}

 </source>


ArrayList.Sort()

<source lang="csharp"> /* C#: The Complete Reference by Herbert Schildt Publisher: Osborne/McGraw-Hill (March 8, 2002) ISBN: 0072134852

  • /

// Sort and search an ArrayList.

using System; using System.Collections;

public class SortSearchDemo {

 public static void Main() { 
   // create an array list 
   ArrayList al = new ArrayList(); 
    
   // Add elements to the array list 
   al.Add(55); 
   al.Add(43); 
   al.Add(-4); 
   al.Add(88); 
   al.Add(3); 
   al.Add(19); 

   Console.Write("Original contents: "); 
   foreach(int i in al) 
     Console.Write(i + " "); 
   Console.WriteLine("\n"); 

   // Sort 
   al.Sort(); 

   // Use foreach loop to display the list. 
   Console.Write("Contents after sorting: "); 
   foreach(int i in al) 
     Console.Write(i + " "); 
   Console.WriteLine("\n"); 

   Console.WriteLine("Index of 43 is " + 
                     al.BinarySearch(43)); 
 } 

}


 </source>


ArrayList.Synchronized

<source lang="csharp"> using System; using System.Collections; class MainClass {

 static void Main(string[] args)
 {
   ArrayList a = new ArrayList(10);
   ArrayList.Synchronized(a);
 }

}


 </source>


ArrayList.ToArray

<source lang="csharp"> 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");
       object[] array2 = list.ToArray();
       Console.WriteLine("Array 2:");
       foreach (string s in array2) 
       {
           Console.WriteLine("\t{0}", s);
       }
   
   }

}


 </source>


ArrayList.ToArray(typeof(T))

<source lang="csharp"> 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);
       }
   }

}

 </source>


ArrayList.TrimToSize()

<source lang="csharp"> using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   myArrayList.Add("A");
   
   string[] anotherStringArray = {"Here"s", "some", "more", "text"};
   myArrayList.SetRange(0, anotherStringArray);
   myArrayList.TrimToSize();
   Console.WriteLine("myArrayList.Capacity = " + myArrayList.Capacity);
 }

}

 </source>


new ArrayList()

<source lang="csharp"> using System; using System.Collections; using System.Collections.Generic; using System.Text; class Program {

   static void Main(string[] args) {
       ArrayList baseballTeams = new ArrayList();
       baseballTeams.Add("s");
       baseballTeams.Add("r");
       baseballTeams.Add("F");
       foreach (string item in baseballTeams) {
           Console.Write(item + "\n");
       }
   }

}


 </source>


new ArrayList(Collection c)

<source lang="csharp"> using System; using System.Collections; class MainClass {

 public static void Main()
 {
   ArrayList myArrayList = new ArrayList();
   myArrayList.Add("This");
   myArrayList.Add("is");
   myArrayList.Add("a");
   myArrayList.Add("test");
   ArrayList anotherArrayList = new ArrayList(myArrayList);
   Console.WriteLine(anotherArrayList);
 }

}


 </source>