ArrayList.RemoveAt-Methode
Aktualisiert: November 2007
Entfernt das Element am angegebenen Index aus der ArrayList.
Assembly: mscorlib (in mscorlib.dll)
public void RemoveAt( int index )
public function RemoveAt( index : int )
Parameter
- index
- Typ: System.Int32
Der nullbasierte Index des zu entfernenden Elements.
Implementiert
IList.RemoveAt(Int32)| Ausnahme | Bedingung |
|---|---|
| ArgumentOutOfRangeException | index ist kleiner als 0 (null). - oder - index ist größer oder gleich Count. |
| NotSupportedException | ArrayList ist schreibgeschützt. - oder - ArrayList hat eine feste Größe. |
In Auflistungen mit zusammenhängenden Elementen, z. B. Listen, wird die entstandene Lücke durch Verschieben aller nachfolgenden Elemente gefüllt. Wenn die Auflistung indiziert ist, werden auch die Indizes der verschobenen Elemente aktualisiert. Dies gilt nicht für Auflistungen, in denen die Elemente konzeptionell in Buckets gruppiert sind, z. B. Hashtabellen.
Diese Methode ist eine O(n)-Operation, wobei n der Count ist.
Im folgenden Codebeispiel wird veranschaulicht, wie Elemente aus ArrayList entfernt werden.
using System; using System.Collections; public class SamplesArrayList { public static void Main() { // Creates and initializes a new ArrayList. ArrayList myAL = new ArrayList(); myAL.Add( "The" ); myAL.Add( "quick" ); myAL.Add( "brown" ); myAL.Add( "fox" ); myAL.Add( "jumped" ); myAL.Add( "over" ); myAL.Add( "the" ); myAL.Add( "lazy" ); myAL.Add( "dog" ); // Displays the ArrayList. Console.WriteLine( "The ArrayList initially contains the following:" ); PrintValues( myAL ); // Removes the element containing "lazy". myAL.Remove( "lazy" ); // Displays the current state of the ArrayList. Console.WriteLine( "After removing \"lazy\":" ); PrintValues( myAL ); // Removes the element at index 5. myAL.RemoveAt( 5 ); // Displays the current state of the ArrayList. Console.WriteLine( "After removing the element at index 5:" ); PrintValues( myAL ); // Removes three elements starting at index 4. myAL.RemoveRange( 4, 3 ); // Displays the current state of the ArrayList. Console.WriteLine( "After removing three elements starting at index 4:" ); PrintValues( myAL ); } public static void PrintValues( IEnumerable myList ) { foreach ( Object obj in myList ) Console.Write( " {0}", obj ); Console.WriteLine(); } } /* This code produces the following output. The ArrayList initially contains the following: The quick brown fox jumped over the lazy dog After removing "lazy": The quick brown fox jumped over the dog After removing the element at index 5: The quick brown fox jumped the dog After removing three elements starting at index 4: The quick brown fox */
import System.*;
import System.Collections.*;
public class SamplesArrayList
{
public static void main(String[] args)
{
// Creates and initializes a new ArrayList.
ArrayList myAL = new ArrayList();
myAL.Add("The");
myAL.Add("quick");
myAL.Add("brown");
myAL.Add("fox");
myAL.Add("jumped");
myAL.Add("over");
myAL.Add("the");
myAL.Add("lazy");
myAL.Add("dog");
// Displays the ArrayList.
Console.WriteLine("The ArrayList initially contains the following:");
PrintValues(myAL);
// Removes the element containing "lazy".
myAL.Remove("lazy");
// Displays the current state of the ArrayList.
Console.WriteLine("After removing \"lazy\":");
PrintValues(myAL);
// Removes the element at index 5.
myAL.RemoveAt(5);
// Displays the current state of the ArrayList.
Console.WriteLine("After removing the element at index 5:");
PrintValues(myAL);
// Removes three elements starting at index 4.
myAL.RemoveRange(4, 3);
// Displays the current state of the ArrayList.
Console.WriteLine("After removing three elements starting at index 4:");
PrintValues(myAL);
} //main
public static void PrintValues(IEnumerable myList)
{
IEnumerator objMyEnum = myList.GetEnumerator();
while (objMyEnum.MoveNext()) {
Object obj = objMyEnum.get_Current();
Console.Write(" {0}", obj);
}
Console.WriteLine();
} //PrintValues
} //SamplesArrayList
/*
This code produces the following output.
The ArrayList initially contains the following:
The quick brown fox jumped over the lazy dog
After removing "lazy":
The quick brown fox jumped over the dog
After removing the element at index 5:
The quick brown fox jumped the dog
After removing three elements starting at index 4:
The quick brown fox
*/
import System; import System.Collections; // Creates and initializes a new ArrayList. var myAL : ArrayList = new ArrayList(); myAL.Add( "The" ); myAL.Add( "quick" ); myAL.Add( "brown" ); myAL.Add( "fox" ); myAL.Add( "jumped" ); myAL.Add( "over" ); myAL.Add( "the" ); myAL.Add( "lazy" ); myAL.Add( "dog" ); // Displays the ArrayList. Console.WriteLine( "The ArrayList initially contains the following:" ); PrintValues( myAL ); // Removes the element containing "lazy". myAL.Remove( "lazy" ); // Displays the current state of the ArrayList. Console.WriteLine( "After removing \"lazy\":" ); PrintValues( myAL ); // Removes the element at index 5. myAL.RemoveAt( 5 ); // Displays the current state of the ArrayList. Console.WriteLine( "After removing the element at index 5:" ); PrintValues( myAL ); // Removes three elements starting at index 4. myAL.RemoveRange( 4, 3 ); // Displays the current state of the ArrayList. Console.WriteLine( "After removing three elements starting at index 4:" ); PrintValues( myAL ); function PrintValues( myList : IEnumerable ) { var myEnumerator : System.Collections.IEnumerator = myList.GetEnumerator(); while ( myEnumerator.MoveNext() ) Console.Write( "\t{0}", myEnumerator.Current ); Console.WriteLine(); } /* This code produces the following output. The ArrayList initially contains the following: The quick brown fox jumped over the lazy dog After removing "lazy": The quick brown fox jumped over the dog After removing the element at index 5: The quick brown fox jumped the dog After removing three elements starting at index 4: The quick brown fox */
Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile für Smartphone, Windows Mobile für Pocket PC, Xbox 360
.NET Framework und .NET Compact Framework unterstützen nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen für .NET Framework.