ArrayList.RemoveAt(Int32) メソッド
定義
public:
virtual void RemoveAt(int index);
public virtual void RemoveAt (int index);
abstract member RemoveAt : int -> unit
override this.RemoveAt : int -> unit
Public Overridable Sub RemoveAt (index As Integer)
パラメーター
- index
- Int32
削除する要素の、0 から始まるインデックス番号。The zero-based index of the element to remove.
実装
例外
index
が 0 未満です。index
is less than zero.
または-or-
index
が Count 以上になっています。index
is equal to or greater than Count.
ArrayList は読み取り専用です。The ArrayList is read-only.
- または --or- ArrayList は固定サイズです。The ArrayList has a fixed size.
例
次のコード例は、から要素を削除する方法を示して ArrayList います。The following code example shows how to remove elements from the ArrayList.
using namespace System;
using namespace System::Collections;
void PrintValues( IEnumerable^ myList );
int main()
{
// Creates and initializes a new ArrayList.
ArrayList^ myAL = gcnew ArrayList;
myAL->Add( "The" );
myAL->Add( "quick" );
myAL->Add( "brown" );
myAL->Add( "fox" );
myAL->Add( "jumps" );
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 );
}
void PrintValues( IEnumerable^ myList )
{
IEnumerator^ myEnum = myList->GetEnumerator();
while ( myEnum->MoveNext() )
{
Object^ obj = safe_cast<Object^>(myEnum->Current);
Console::Write( " {0}", obj );
}
Console::WriteLine();
}
/*
This code produces the following output.
The ArrayList initially contains the following:
The quick brown fox jumps over the lazy dog
After removing "lazy":
The quick brown fox jumps over the dog
After removing the element at index 5:
The quick brown fox jumps the dog
After removing three elements starting at index 4:
The quick brown fox
*/
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( "jumps" );
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 jumps over the lazy dog
After removing "lazy":
The quick brown fox jumps over the dog
After removing the element at index 5:
The quick brown fox jumps the dog
After removing three elements starting at index 4:
The quick brown fox
*/
Imports System.Collections
Public Class SamplesArrayList
Public Shared Sub Main()
' Creates and initializes a new ArrayList.
Dim myAL As New ArrayList()
myAL.Add("The")
myAL.Add("quick")
myAL.Add("brown")
myAL.Add("fox")
myAL.Add("jumps")
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)
End Sub
Public Shared Sub PrintValues(myList As IEnumerable)
Dim obj As [Object]
For Each obj In myList
Console.Write(" {0}", obj)
Next obj
Console.WriteLine()
End Sub
End Class
' This code produces the following output.
'
' The ArrayList initially contains the following:
' The quick brown fox jumps over the lazy dog
' After removing "lazy":
' The quick brown fox jumps over the dog
' After removing the element at index 5:
' The quick brown fox jumps the dog
' After removing three elements starting at index 4:
' The quick brown fox
注釈
要素が削除されると、コレクションのサイズが調整され、プロパティの値 Count が1ずつ減少します。After the element is removed, the size of the collection is adjusted and the value of the Count property is decreased by one.
リストなどの連続する要素のコレクションでは、空白になった位置を埋めるために、削除された要素の後にある要素の位置が繰り上げられます。In collections of contiguous elements, such as lists, the elements that follow the removed element move up to occupy the vacated spot. コレクションにインデックスがある場合、移動した要素のインデックスも更新されます。If the collection is indexed, the indexes of the elements that are moved are also updated. この動作は、要素が概念的にバケットにグループ化されているハッシュ テーブルなどのコレクションには適用されません。This behavior does not apply to collections where elements are conceptually grouped into buckets, such as a hash table.
このメソッドは O(n)
操作です。ここで、 n
は Count です。This method is an O(n)
operation, where n
is Count.