다음을 통해 공유


ArrayList.RemoveAt 메서드

ArrayList의 지정한 인덱스에서 요소를 제거합니다.

네임스페이스: System.Collections
어셈블리: mscorlib(mscorlib.dll)

구문

‘선언
Public Overridable Sub RemoveAt ( _
    index As Integer _
)
‘사용 방법
Dim instance As ArrayList
Dim index As Integer

instance.RemoveAt(index)
public virtual void RemoveAt (
    int index
)
public:
virtual void RemoveAt (
    int index
)
public void RemoveAt (
    int index
)
public function RemoveAt (
    index : int
)

매개 변수

  • index
    제거할 요소의 0부터 시작하는 인덱스입니다.

예외

예외 형식 조건

ArgumentOutOfRangeException

index가 0보다 작은 경우

- 또는 -

index이 Count보다 크거나 같은 경우

NotSupportedException

ArrayList가 읽기 전용인 경우

- 또는 -

ArrayList의 크기가 고정되어 있는 경우

설명

목록과 같은 연속 요소 컬렉션에서는 제거된 요소의 다음 요소가 앞으로 이동하여 빈 지점을 채웁니다. 컬렉션이 인덱싱되면 이동되는 요소의 인덱스도 업데이트됩니다. 이 동작은 개념적으로 요소가 해시 테이블과 같은 버킷으로 그룹화되는 컬렉션에는 적용되지 않습니다.

이 메서드는 O(n) 연산이며, 여기서 n은 Count입니다.

예제

다음 코드 예제에서는 ArrayList에서 요소를 제거하는 방법을 보여 줍니다.

Imports System
Imports System.Collections
Imports Microsoft.VisualBasic

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("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)
    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 'PrintValues

End Class


' 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
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
*/ 
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( "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 );
}

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   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 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework에서 모든 플래폼의 모든 버전을 지원하지는 않습니다. 지원되는 버전의 목록은 시스템 요구 사항을 참조하십시오.

버전 정보

.NET Framework

2.0, 1.1, 1.0에서 지원

.NET Compact Framework

2.0, 1.0에서 지원

참고 항목

참조

ArrayList 클래스
ArrayList 멤버
System.Collections 네임스페이스
Remove
RemoveRange
Add
Insert