Export (0) Print
Expand All

Hashtable::Clear Method

Removes all elements from the Hashtable.

Namespace:  System.Collections
Assembly:  mscorlib (in mscorlib.dll)

public:
virtual void Clear()

Implements

IDictionary::Clear()

ExceptionCondition
NotSupportedException

The Hashtable is read-only.

Count is set to zero, and references to other objects from elements of the collection are also released. The capacity remains unchanged.

This method is an O(n) operation, where n is Count.

The following example shows how to clear the values of the Hashtable.

using namespace System;
using namespace System::Collections;
void PrintKeysAndValues( Hashtable^ myHT );
int main()
{

   // Creates and initializes a new Hashtable.
   Hashtable^ myHT = gcnew Hashtable;
   myHT->Add( "one", "The" );
   myHT->Add( "two", "quick" );
   myHT->Add( "three", "brown" );
   myHT->Add( "four", "fox" );
   myHT->Add( "five", "jumped" );

   // Displays the count and values of the Hashtable.
   Console::WriteLine( "Initially," );
   Console::WriteLine( "   Count    : {0}", myHT->Count );
   Console::WriteLine( "   Values:" );
   PrintKeysAndValues( myHT );

   // Clears the Hashtable.
   myHT->Clear();

   // Displays the count and values of the Hashtable.
   Console::WriteLine( "After Clear," );
   Console::WriteLine( "   Count    : {0}", myHT->Count );
   Console::WriteLine( "   Values:" );
   PrintKeysAndValues( myHT );
}

void PrintKeysAndValues( Hashtable^ myHT )
{
   Console::WriteLine( "\t-KEY-\t-VALUE-" );
   IEnumerator^ myEnum = myHT->GetEnumerator();
   while ( myEnum->MoveNext() )
   {
      DictionaryEntry de = *safe_cast<DictionaryEntry ^>(myEnum->Current);
      Console::WriteLine( "\t{0}:\t{1}", de.Key, de.Value );
   }

   Console::WriteLine();
}

/* 
 This code produces the following output.

 Initially,
    Count    : 5
    Values:
         -KEY-   -VALUE-
         two:    quick
         three:  brown
         four:   fox
         five:   jumped
         one:    The

 After Clear,
    Count    : 0
    Values:
         -KEY-   -VALUE-

 */

.NET Framework

Supported in: 4.6, 4.5, 4, 3.5, 3.0, 2.0, 1.1

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

XNA Framework

Supported in: 3.0, 2.0, 1.0
Show:
© 2015 Microsoft