ArrayList.Item Property (Int32)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Gets or sets the element at the specified index.

Namespace:   System.Collections
Assembly:  mscorlib (in mscorlib.dll)

abstract Item : 
        index:int -> Object with get, set
override Item : 
        index:int -> Object with get, set


Type: System.Int32

The zero-based index of the element to get or set.

Property Value

Type: System.Object

The element at the specified index.

Exception Condition

index is less than zero.


index is equal to or greater than Count.

The Item returns an Object, so you may need to cast the returned value to the original type in order to manipulate it. It is important to note that ArrayList is not a strongly-typed collection. For a strongly-typed alternative, see List<'T>.

ArrayList accepts null as a valid value and allows duplicate elements.

This property provides the ability to access a specific element in the collection by using the following syntax: myCollection[index].

The C# language uses the keyword to define the indexers instead of implementing the Item property. Visual Basic implements Item as a default property, which provides the same indexing functionality.

Retrieving the value of this property is an O(1) operation; setting the property is also an O(1) operation.

The following code example creates an ArrayList and adds several items. The example demonstrates accessing elements with the Item property (the indexer in C#), and changing an element by assigning a new value to the Item property for a specified index. The example also shows that the Item property cannot be used to access or add elements outside the current size of the list.

No code example is currently available or this language may not be supported.

The following example uses the Item property explicitly to assign values to items in the list. The example defines a class that inherits an ArrayList and adds a method to scramble the list items.

No code example is currently available or this language may not be supported.

Universal Windows Platform
Available since 10
.NET Framework
Available since 1.1
Return to top