Academic Integrity: tutoring, explanations, and feedback — we don’t complete graded work or submit on a student’s behalf.

The ArrayList is a good replacement for a standard array in that it allows the a

ID: 3637721 • Letter: T

Question

The ArrayList is a good replacement for a standard array in that it allows the addition of items into the collection at runtime - WITHOUT knowing how large the array like collection is going to be ahead of time. Using Visual Basic, create an new windows form application.
Add 2 controls that can display multi-line text. Use the application to enter data into an ArrayList. Display the ArrayList as is in one control of your application. Sort the ArrayList using the sort method associated with the ArrayList and then display the sorted data in a second control.

Explanation / Answer

System.Object System.Collections.ArrayList System.Windows.Forms.DomainUpDown.DomainUpDownItemCollection Namespace: System.Collections Assembly: mscorlib (in mscorlib.dll) Syntax C#C++F#VB [SerializableAttribute] [ComVisibleAttribute(true)] public class ArrayList : IList, ICollection, IEnumerable, ICloneable The ArrayList type exposes the following members. Constructors 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. Top Properties 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. Top Methods 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. Top Extension Methods Name Description AsParallel Enables parallelization of a query. (Defined by ParallelEnumerable.) AsQueryable Converts an IEnumerable to an IQueryable. (Defined by Queryable.) Cast Casts the elements of an IEnumerable to the specified type. (Defined by Enumerable.) OfType Filters the elements of an IEnumerable based on a specified type. (Defined by Enumerable.) Top Remarks ArrayList may not always offer the best performance for a given task. See the "Performance Considerations" section in the List reference topic for a discussion of the relative performance of these classes. 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. For very large ArrayList objects, you can increase the maximum capacity to 2 billion elements on a 64-bit system by setting the enabled attribute of the gcAllowVeryLargeObjects configuration element to true in the run-time environment. 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. Examples The following code example shows how to create and initialize an ArrayList and how to print out its values. C#C++VB 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 ! */