StringCollection::Remove Method (String^)
Removes the first occurrence of a specific string from the StringCollection.
Assembly: System (in System.dll)
Parameters
- value
-
Type:
System::String^
The string to remove from the StringCollection. The value can be null.
Duplicate strings are allowed in StringCollection. Only the first occurrence is removed. To remove all occurrences of the specified string, use RemoveAt(IndexOf(value)) repeatedly while IndexOf does not return -1.
If the StringCollection does not contain the specified object, the StringCollection remains unchanged. No exception is thrown.
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.
This method determines equality by calling Object::Equals. String comparisons are case-sensitive.
This method performs a linear search; therefore, this method is an O(n) operation, where n is Count.
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: */
Available since 10
.NET Framework
Available since 1.1