ArrayList Class
Implements the IList interface using an array whose size is dynamically increased as required.
System.Collections.ArrayList
System.Windows.Forms.DomainUpDown.DomainUpDownItemCollection
Assembly: mscorlib (in mscorlib.dll)
The ArrayList type exposes the following members.
Name | Description | |
---|---|---|
![]() ![]() | ArrayList() | Initializes a new instance of the ArrayList class that is empty and has the default initial capacity. |
![]() ![]() | ArrayList(ICollection) | Initializes a new instance of the ArrayList class that contains elements copied from the specified collection and that has the same initial capacity as the number of elements copied. |
![]() ![]() | ArrayList(Int32) | Initializes a new instance of the ArrayList class that is empty and has the specified initial capacity. |
Name | Description | |
---|---|---|
![]() ![]() | Capacity | Gets or sets the number of elements that the ArrayList can contain. |
![]() ![]() | Count | Gets the number of elements actually contained in the ArrayList. |
![]() ![]() | IsFixedSize | Gets a value indicating whether the ArrayList has a fixed size. |
![]() ![]() | IsReadOnly | Gets a value indicating whether the ArrayList is read-only. |
![]() ![]() | IsSynchronized | Gets a value indicating whether access to the ArrayList is synchronized (thread safe). |
![]() ![]() | Item | Gets or sets the element at the specified index. |
![]() ![]() | SyncRoot | Gets an object that can be used to synchronize access to the ArrayList. |
Name | Description | |
---|---|---|
![]() ![]() | Adapter | Creates an ArrayList wrapper for a specific IList. |
![]() ![]() | Add | Adds an object to the end of the ArrayList. |
![]() ![]() | AddRange | Adds the elements of an ICollection to the end of the ArrayList. |
![]() | BinarySearch(Object) | Searches the entire sorted ArrayList for an element using the default comparer and returns the zero-based index of the element. |
![]() | BinarySearch(Object, IComparer) | Searches the entire sorted ArrayList for an element using the specified comparer and returns the zero-based index of the element. |
![]() ![]() | BinarySearch(Int32, Int32, Object, IComparer) | Searches a range of elements in the sorted ArrayList for an element using the specified comparer and returns the zero-based index of the element. |
![]() ![]() | Clear | Removes all elements from the ArrayList. |
![]() ![]() | Clone | Creates a shallow copy of the ArrayList. |
![]() ![]() | Contains | Determines whether an element is in the ArrayList. |
![]() ![]() | CopyTo(Array) | Copies the entire ArrayList to a compatible one-dimensional Array, starting at the beginning of the target array. |
![]() ![]() | CopyTo(Array, Int32) | Copies the entire ArrayList to a compatible one-dimensional Array, starting at the specified index of the target array. |
![]() ![]() | CopyTo(Int32, Array, Int32, Int32) | Copies a range of elements from the ArrayList to a compatible one-dimensional Array, starting at the specified index of the target array. |
![]() ![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() ![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() ![]() | FixedSize(ArrayList) | Returns an ArrayList wrapper with a fixed size. |
![]() ![]() | FixedSize(IList) | Returns an IList wrapper with a fixed size. |
![]() ![]() | GetEnumerator() | Returns an enumerator for the entire ArrayList. |
![]() | GetEnumerator(Int32, Int32) | Returns an enumerator for a range of elements in the ArrayList. |
![]() ![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetRange | Returns an ArrayList which represents a subset of the elements in the source ArrayList. |
![]() ![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() ![]() | IndexOf(Object) | Searches for the specified Object and returns the zero-based index of the first occurrence within the entire ArrayList. |
![]() | IndexOf(Object, Int32) | Searches for the specified Object and returns the zero-based index of the first occurrence within the range of elements in the ArrayList that extends from the specified index to the last element. |
![]() ![]() | IndexOf(Object, Int32, Int32) | Searches for the specified Object and returns the zero-based index of the first occurrence within the range of elements in the ArrayList that starts at the specified index and contains the specified number of elements. |
![]() ![]() | Insert | Inserts an element into the ArrayList at the specified index. |
![]() ![]() | InsertRange | Inserts the elements of a collection into the ArrayList at the specified index. |
![]() | LastIndexOf(Object) | Searches for the specified Object and returns the zero-based index of the last occurrence within the entire ArrayList. |
![]() | LastIndexOf(Object, Int32) | Searches for the specified Object and returns the zero-based index of the last occurrence within the range of elements in the ArrayList that extends from the first element to the specified index. |
![]() | LastIndexOf(Object, Int32, Int32) | Searches for the specified Object and returns the zero-based index of the last occurrence within the range of elements in the ArrayList that contains the specified number of elements and ends at the specified index. |
![]() ![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() ![]() | ReadOnly(ArrayList) | Returns a read-only ArrayList wrapper. |
![]() ![]() | ReadOnly(IList) | Returns a read-only IList wrapper. |
![]() ![]() | Remove | Removes the first occurrence of a specific object from the ArrayList. |
![]() ![]() | RemoveAt | Removes the element at the specified index of the ArrayList. |
![]() ![]() | RemoveRange | Removes a range of elements from the ArrayList. |
![]() ![]() | Repeat | Returns an ArrayList whose elements are copies of the specified value. |
![]() ![]() | Reverse() | Reverses the order of the elements in the entire ArrayList. |
![]() ![]() | Reverse(Int32, Int32) | Reverses the order of the elements in the specified range. |
![]() | SetRange | Copies the elements of a collection over a range of elements in the ArrayList. |
![]() ![]() | Sort() | Sorts the elements in the entire ArrayList. |
![]() ![]() | Sort(IComparer) | Sorts the elements in the entire ArrayList using the specified comparer. |
![]() ![]() | Sort(Int32, Int32, IComparer) | Sorts the elements in a range of elements in ArrayList using the specified comparer. |
![]() ![]() ![]() | Synchronized(ArrayList) | Returns an ArrayList wrapper that is synchronized (thread safe). |
![]() ![]() | Synchronized(IList) | Returns an IList wrapper that is synchronized (thread safe). |
![]() ![]() | ToArray() | Copies the elements of the ArrayList to a new Object array. |
![]() ![]() | ToArray(Type) | Copies the elements of the ArrayList to a new array of the specified element type. |
![]() ![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
![]() ![]() | TrimToSize | Sets the capacity to the actual number of elements in the ArrayList. |
Name | Description | |
---|---|---|
![]() | AsParallel | Enables parallelization of a query. (Defined by ParallelEnumerable.) |
![]() | AsQueryable | Converts an IEnumerable to an IQueryable. (Defined by Queryable.) |
![]() ![]() | Cast<TResult> | Casts the elements of an IEnumerable to the specified type. (Defined by Enumerable.) |
![]() ![]() | OfType<TResult> | Filters the elements of an IEnumerable based on a specified type. (Defined by Enumerable.) |
The ArrayList is not guaranteed to be sorted. You must sort the ArrayList prior to performing operations (such as BinarySearch) that require the ArrayList to be sorted.
The capacity of an ArrayList is the number of elements the ArrayList can hold. As elements are added to an ArrayList, the capacity is automatically increased as required through reallocation. The capacity can be decreased by calling TrimToSize or by setting the Capacity property explicitly.
Elements in this collection can be accessed using an integer index. Indexes in this collection are zero-based.
The ArrayList collection accepts null as a valid value, allows duplicate elements.
Using multidimensional arrays as elements in an ArrayList collection is not supported.
The following code example shows how to create and initialize an ArrayList and how to print out its values.
using System; using System.Collections; public class SamplesArrayList { public static void Main() { // Creates and initializes a new ArrayList. ArrayList myAL = new ArrayList(); myAL.Add("Hello"); myAL.Add("World"); myAL.Add("!"); // Displays the properties and values of the ArrayList. Console.WriteLine( "myAL" ); Console.WriteLine( " Count: {0}", myAL.Count ); Console.WriteLine( " Capacity: {0}", myAL.Capacity ); Console.Write( " Values:" ); PrintValues( myAL ); } public static void PrintValues( IEnumerable myList ) { foreach ( Object obj in myList ) Console.Write( " {0}", obj ); Console.WriteLine(); } } /* This code produces output similar to the following: myAL Count: 3 Capacity: 4 Values: Hello World ! */
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.
An ArrayList can support multiple readers concurrently, as long as the collection is not modified. To guarantee the thread safety of the ArrayList, all operations must be done through the wrapper returned by the Synchronized method.
Enumerating through a collection is intrinsically not a thread-safe procedure. Even when a collection is synchronized, other threads can still modify the collection, which causes the enumerator to throw an exception. To guarantee thread safety during enumeration, you can either lock the collection during the entire enumeration or catch the exceptions resulting from changes made by other threads.