StringCollection.Remove(String) StringCollection.Remove(String) StringCollection.Remove(String) StringCollection.Remove(String) Method

Definition

Entfernt das erste Vorkommen einer bestimmten Zeichenfolge aus der StringCollection.Removes the first occurrence of a specific string from the StringCollection.

public:
 void Remove(System::String ^ value);
public void Remove (string value);
member this.Remove : string -> unit
Public Sub Remove (value As String)

Parameter

value
String String String String

Die Zeichenfolge, die aus der StringCollection entfernt werden soll.The string to remove from the StringCollection. Der Wert kann null sein.The value can be null.

Beispiele

Im folgenden Codebeispiel werden Elemente aus der StringCollectionentfernt.The following code example removes elements from the StringCollection.

#using <System.dll>

using namespace System;
using namespace System::Collections;
using namespace System::Collections::Specialized;
void PrintValues( IEnumerable^ myCol );
int main()
{
   
   // Creates and initializes a new StringCollection.
   StringCollection^ myCol = gcnew StringCollection;
   array<String^>^myArr = {"RED","orange","yellow","RED","green","blue","RED","indigo","violet","RED"};
   myCol->AddRange( myArr );
   Console::WriteLine( "Initial contents of the StringCollection:" );
   PrintValues( myCol );
   
   // Removes one element from the StringCollection.
   myCol->Remove( "yellow" );
   Console::WriteLine( "After removing \"yellow\":" );
   PrintValues( myCol );
   
   // Removes all occurrences of a value from the StringCollection.
   int i = myCol->IndexOf( "RED" );
   while ( i > -1 )
   {
      myCol->RemoveAt( i );
      i = myCol->IndexOf( "RED" );
   }

   Console::WriteLine( "After removing all occurrences of \"RED\":" );
   PrintValues( myCol );
   
   // Clears the entire collection.
   myCol->Clear();
   Console::WriteLine( "After clearing the collection:" );
   PrintValues( myCol );
}

void PrintValues( IEnumerable^ myCol )
{
   IEnumerator^ myEnum = myCol->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      Object^ obj = safe_cast<Object^>(myEnum->Current);
      Console::WriteLine( "   {0}", obj );
   }

   Console::WriteLine();
}

/*
This code produces the following output.

Initial contents of the StringCollection:
   RED
   orange
   yellow
   RED
   green
   blue
   RED
   indigo
   violet
   RED

After removing "yellow":
   RED
   orange
   RED
   green
   blue
   RED
   indigo
   violet
   RED

After removing all occurrences of "RED":
   orange
   green
   blue
   indigo
   violet

After clearing the collection:

*/
using System;
using System.Collections;
using System.Collections.Specialized;

public class SamplesStringCollection  {

   public static void Main()  {

      // Creates and initializes a new StringCollection.
      StringCollection myCol = new StringCollection();
      String[] myArr = new String[] { "RED", "orange", "yellow", "RED", "green", "blue", "RED", "indigo", "violet", "RED" };
      myCol.AddRange( myArr );

      Console.WriteLine( "Initial contents of the StringCollection:" );
      PrintValues( myCol );

      // Removes one element from the StringCollection.
      myCol.Remove( "yellow" );

      Console.WriteLine( "After removing \"yellow\":" );
      PrintValues( myCol );

      // Removes all occurrences of a value from the StringCollection.
      int i = myCol.IndexOf( "RED" );
      while ( i > -1 )  {
         myCol.RemoveAt( i );
         i = myCol.IndexOf( "RED" );
      }

      Console.WriteLine( "After removing all occurrences of \"RED\":" );
      PrintValues( myCol );

      // Clears the entire collection.
      myCol.Clear();

      Console.WriteLine( "After clearing the collection:" );
      PrintValues( myCol );

   }

   public static void PrintValues( IEnumerable myCol )  {
      foreach ( Object obj in myCol )
         Console.WriteLine( "   {0}", obj );
      Console.WriteLine();
   }

}

/*
This code produces the following output.

Initial contents of the StringCollection:
   RED
   orange
   yellow
   RED
   green
   blue
   RED
   indigo
   violet
   RED

After removing "yellow":
   RED
   orange
   RED
   green
   blue
   RED
   indigo
   violet
   RED

After removing all occurrences of "RED":
   orange
   green
   blue
   indigo
   violet

After clearing the collection:

*/
Imports System.Collections
Imports System.Collections.Specialized

Public Class SamplesStringCollection   

   Public Shared Sub Main()

      ' Creates and initializes a new StringCollection.
      Dim myCol As New StringCollection()
      Dim myArr() As [String] = {"RED", "orange", "yellow", "RED", "green", "blue", "RED", "indigo", "violet", "RED"}
      myCol.AddRange(myArr)

      Console.WriteLine("Initial contents of the StringCollection:")
      PrintValues(myCol)

      ' Removes one element from the StringCollection.
      myCol.Remove("yellow")

      Console.WriteLine("After removing ""yellow"":")
      PrintValues(myCol)

      ' Removes all occurrences of a value from the StringCollection.
      Dim i As Integer = myCol.IndexOf("RED")
      While i > - 1
         myCol.RemoveAt(i)
         i = myCol.IndexOf("RED")
      End While

      Console.WriteLine("After removing all occurrences of ""RED"":")
      PrintValues(myCol)

      ' Clears the entire collection.
      myCol.Clear()

      Console.WriteLine("After clearing the collection:")
      PrintValues(myCol)

   End Sub

   Public Shared Sub PrintValues(myCol As IEnumerable)
      Dim obj As [Object]
      For Each obj In  myCol
         Console.WriteLine("   {0}", obj)
      Next obj
      Console.WriteLine()
   End Sub

End Class 'SamplesStringCollection 


'This code produces the following output.
'
'Initial contents of the StringCollection:
'   RED
'   orange
'   yellow
'   RED
'   green
'   blue
'   RED
'   indigo
'   violet
'   RED
'
'After removing "yellow":
'   RED
'   orange
'   RED
'   green
'   blue
'   RED
'   indigo
'   violet
'   RED
'
'After removing all occurrences of "RED":
'   orange
'   green
'   blue
'   indigo
'   violet
'
'After clearing the collection:
'

Hinweise

Doppelte Zeichen folgen sind in StringCollectionzulässig.Duplicate strings are allowed in StringCollection. Nur das erste Vorkommen wird entfernt.Only the first occurrence is removed. Um alle Vorkommen der angegebenen Zeichenfolge zu entfernen, RemoveAt(IndexOf(value)) verwenden Sie IndexOf wiederholt, während nicht-1 zurückgibt.To remove all occurrences of the specified string, use RemoveAt(IndexOf(value)) repeatedly while IndexOf does not return -1.

Wenn das angegebene Objekt nicht enthält StringCollection , bleibt unverändert. StringCollectionIf the StringCollection does not contain the specified object, the StringCollection remains unchanged. Es werden keine Ausnahmen ausgelöst.No exception is thrown.

In Auflistungen mit zusammenhängenden Elementen, beispielsweise Listen, wird die nach dem Entfernen eines Elements entstandene Lücke durch Verschieben aller nachfolgenden Elemente gefüllt.In collections of contiguous elements, such as lists, the elements that follow the removed element move up to occupy the vacated spot. Wenn die Auflistung indiziert ist, werden auch die Indizes der verschobenen Elemente aktualisiert.If the collection is indexed, the indexes of the elements that are moved are also updated. Dies gilt nicht für Auflistungen, in denen die Elemente konzeptionell in Buckets gruppiert sind, beispielsweise Hashtabellen.This behavior does not apply to collections where elements are conceptually grouped into buckets, such as a hash table.

Diese Methode bestimmt Gleichheit durch Aufrufen Object.Equalsvon.This method determines equality by calling Object.Equals. Bei Zeichen folgen vergleichen wird Groß-/Kleinschreibung beachtet.String comparisons are case-sensitive.

Diese Methode führt eine lineare Suche aus. Daher ist diese Methode ein O (n)-Vorgang, bei dem Count n gleich ist.This method performs a linear search; therefore, this method is an O(n) operation, where n is Count.

Gilt für:

Siehe auch