다음을 통해 공유


SortedList.Remove(Object) 메서드

정의

SortedList 개체에서 지정된 키를 가진 요소를 제거합니다.

public:
 virtual void Remove(System::Object ^ key);
public virtual void Remove (object key);
abstract member Remove : obj -> unit
override this.Remove : obj -> unit
Public Overridable Sub Remove (key As Object)

매개 변수

key
Object

제거할 요소의 키입니다.

구현

예외

key이(가) null인 경우

SortedList 개체가 읽기 전용인 경우

또는

SortedList가 고정 크기입니다.

예제

다음 코드 예제에서는 요소를 제거 하는 방법을 보여 주는 개체입니다 SortedList .

#using <system.dll>

using namespace System;
using namespace System::Collections;
void PrintKeysAndValues( SortedList^ myList )
{
   Console::WriteLine( "\t-KEY-\t-VALUE-" );
   for ( int i = 0; i < myList->Count; i++ )
   {
      Console::WriteLine( "\t{0}:\t{1}", myList->GetKey( i ), myList->GetByIndex( i ) );

   }
   Console::WriteLine();
}

int main()
{
   
   // Creates and initializes a new SortedList.
   SortedList^ mySL = gcnew SortedList;
   mySL->Add( "3c", "dog" );
   mySL->Add( "2c", "over" );
   mySL->Add( "1c", "brown" );
   mySL->Add( "1a", "The" );
   mySL->Add( "1b", "quick" );
   mySL->Add( "3a", "the" );
   mySL->Add( "3b", "lazy" );
   mySL->Add( "2a", "fox" );
   mySL->Add( "2b", "jumps" );
   
   // Displays the SortedList.
   Console::WriteLine( "The SortedList initially contains the following:" );
   PrintKeysAndValues( mySL );
   
   // Removes the element with the key "3b".
   mySL->Remove( "3b" );
   
   // Displays the current state of the SortedList.
   Console::WriteLine( "After removing \"lazy\":" );
   PrintKeysAndValues( mySL );
   
   // Removes the element at index 5.
   mySL->RemoveAt( 5 );
   
   // Displays the current state of the SortedList.
   Console::WriteLine( "After removing the element at index 5:" );
   PrintKeysAndValues( mySL );
}

/*
This code produces the following output.

The SortedList initially contains the following:
        -KEY-   -VALUE-
        1a:     The
        1b:     quick
        1c:     brown
        2a:     fox
        2b:     jumps
        2c:     over
        3a:     the
        3b:     lazy
        3c:     dog

After removing "lazy":
        -KEY-   -VALUE-
        1a:     The
        1b:     quick
        1c:     brown
        2a:     fox
        2b:     jumps
        2c:     over
        3a:     the
        3c:     dog

After removing the element at index 5:
        -KEY-   -VALUE-
        1a:     The
        1b:     quick
        1c:     brown
        2a:     fox
        2b:     jumps
        3a:     the
        3c:     dog
*/
using System;
using System.Collections;
public class SamplesSortedList  {

   public static void Main()  {

      // Creates and initializes a new SortedList.
      SortedList mySL = new SortedList();
      mySL.Add( "3c", "dog" );
      mySL.Add( "2c", "over" );
      mySL.Add( "1c", "brown" );
      mySL.Add( "1a", "The" );
      mySL.Add( "1b", "quick" );
      mySL.Add( "3a", "the" );
      mySL.Add( "3b", "lazy" );
      mySL.Add( "2a", "fox" );
      mySL.Add( "2b", "jumps" );

      // Displays the SortedList.
      Console.WriteLine( "The SortedList initially contains the following:" );
      PrintKeysAndValues( mySL );

      // Removes the element with the key "3b".
      mySL.Remove( "3b" );

      // Displays the current state of the SortedList.
      Console.WriteLine( "After removing \"lazy\":" );
      PrintKeysAndValues( mySL );

      // Removes the element at index 5.
      mySL.RemoveAt( 5 );

      // Displays the current state of the SortedList.
      Console.WriteLine( "After removing the element at index 5:" );
      PrintKeysAndValues( mySL );
   }

   public static void PrintKeysAndValues( SortedList myList )  {
      Console.WriteLine( "\t-KEY-\t-VALUE-" );
      for ( int i = 0; i < myList.Count; i++ )  {
         Console.WriteLine( "\t{0}:\t{1}", myList.GetKey(i), myList.GetByIndex(i) );
      }
      Console.WriteLine();
   }
}
/*
This code produces the following output.

The SortedList initially contains the following:
    -KEY-    -VALUE-
    1a:    The
    1b:    quick
    1c:    brown
    2a:    fox
    2b:    jumps
    2c:    over
    3a:    the
    3b:    lazy
    3c:    dog

After removing "lazy":
    -KEY-    -VALUE-
    1a:    The
    1b:    quick
    1c:    brown
    2a:    fox
    2b:    jumps
    2c:    over
    3a:    the
    3c:    dog

After removing the element at index 5:
    -KEY-    -VALUE-
    1a:    The
    1b:    quick
    1c:    brown
    2a:    fox
    2b:    jumps
    3a:    the
    3c:    dog
*/
Imports System.Collections

Public Class SamplesSortedList    
    
    Public Shared Sub Main()
        
        ' Creates and initializes a new SortedList.
        Dim mySL As New SortedList()
        mySL.Add("3c", "dog")
        mySL.Add("2c", "over")
        mySL.Add("1c", "brown")
        mySL.Add("1a", "The")
        mySL.Add("1b", "quick")
        mySL.Add("3a", "the")
        mySL.Add("3b", "lazy")
        mySL.Add("2a", "fox")
        mySL.Add("2b", "jumps")
        
        ' Displays the SortedList.
        Console.WriteLine("The SortedList initially contains the following:")
        PrintKeysAndValues(mySL)
        
        ' Removes the element with the key "3b".
        mySL.Remove("3b")
        
        ' Displays the current state of the SortedList.
        Console.WriteLine("After removing ""lazy"":")
        PrintKeysAndValues(mySL)
        
        ' Removes the element at index 5.
        mySL.RemoveAt(5)
        
        ' Displays the current state of the SortedList.
        Console.WriteLine("After removing the element at index 5:")
        PrintKeysAndValues(mySL)
    End Sub
    
    
    Public Shared Sub PrintKeysAndValues(myList As SortedList)
        Console.WriteLine(ControlChars.Tab & "-KEY-" & ControlChars.Tab & _
           "-VALUE-")
        Dim i As Integer
        For i = 0 To myList.Count - 1
            Console.WriteLine(ControlChars.Tab & "{0}:" & ControlChars.Tab & _
               "{1}", myList.GetKey(i), myList.GetByIndex(i))
        Next i
        Console.WriteLine()
    End Sub
End Class

' This code produces the following output.
' 
' The SortedList initially contains the following:
'     -KEY-    -VALUE-
'     1a:    The
'     1b:    quick
'     1c:    brown
'     2a:    fox
'     2b:    jumps
'     2c:    over
'     3a:    the
'     3b:    lazy
'     3c:    dog
' 
' After removing "lazy":
'     -KEY-    -VALUE-
'     1a:    The
'     1b:    quick
'     1c:    brown
'     2a:    fox
'     2b:    jumps
'     2c:    over
'     3a:    the
'     3c:    dog
' 
' After removing the element at index 5:
'     -KEY-    -VALUE-
'     1a:    The
'     1b:    quick
'     1c:    brown
'     2a:    fox
'     2b:    jumps
'     3a:    the
'     3c:    dog

설명

SortedList 개체에 지정한 키를 가진 요소가 없으면 SortedList가 변경되지 않은 상태로 유지됩니다. 예외는 throw되지 않습니다.

목록처럼 연속된 요소로 구성된 컬렉션에서는 제거된 요소 다음에 있는 요소를 위로 이동하여 빈 자리를 채웁니다. 컬렉션에 인덱스가 지정된 경우 이동되는 요소의 인덱스도 업데이트됩니다. 요소가 해시 테이블 같은 버킷으로 개념적으로 그룹화되어 있는 컬렉션에는 이러한 동작이 적용되지 않습니다.

이 메서드는 작업입니다 O(n) . 여기서 n 는 입니다 Count.

적용 대상

추가 정보