Hashtable.Clear 方法 
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
从 Hashtable 中移除所有元素。
public:
 virtual void Clear();public virtual void Clear ();abstract member Clear : unit -> unit
override this.Clear : unit -> unitPublic Overridable Sub Clear ()实现
例外
示例
以下示例演示如何清除 的值 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", "jumps" );
   
   // 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:   jumps
         one:    The
 After Clear,
    Count    : 0
    Values:
         -KEY-   -VALUE-
 */
using System;
using System.Collections;
public class SamplesHashtable
{
   public static void Main()
   {
      // Creates and initializes a new Hashtable.
      var myHT = new Hashtable();
      myHT.Add("one", "The");
      myHT.Add("two", "quick");
      myHT.Add("three", "brown");
      myHT.Add("four", "fox");
      myHT.Add("five", "jumps");
      // Displays the count and values of the Hashtable.
      Console.WriteLine("Initially,");
      Console.WriteLine($"   Count    : {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    : {myHT.Count}");
      Console.WriteLine("   Values:" );
      PrintKeysAndValues(myHT);
   }
   public static void PrintKeysAndValues( Hashtable myHT )
   {
      Console.WriteLine("\t-KEY-\t-VALUE-");
      foreach (DictionaryEntry de in myHT)
         Console.WriteLine("\t{de.Key}:\t{de.Value}");
      Console.WriteLine();
   }
}
/*
This code produces the following output.
Initially,
   Count    : 5
   Values:
        -KEY-   -VALUE-
        two:    quick
        three:  brown
        four:   fox
        five:   jumps
        one:    The
After Clear,
   Count    : 0
   Values:
        -KEY-   -VALUE-
*/
Imports System.Collections
Public Class SamplesHashtable
    Public Shared Sub Main()
        ' Creates and initializes a new Hashtable.
        Dim myHT As New Hashtable()
        myHT.Add("one", "The")
        myHT.Add("two", "quick")
        myHT.Add("three", "brown")
        myHT.Add("four", "fox")
        myHT.Add("five", "jumps")
        ' Displays the count and values of the Hashtable.
        Console.WriteLine("Initially,")
        Console.WriteLine($"   Count    : {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    : {myHT.Count}")
        Console.WriteLine("   Values:")
        PrintKeysAndValues(myHT)
    End Sub
    Public Shared Sub PrintKeysAndValues(myHT As Hashtable)
        Console.WriteLine(vbTab + "-KEY-" + vbTab + "-VALUE-")
        For Each de As DictionaryEntry In myHT
            Console.WriteLine(vbTab + "{0}:" + vbTab + "{1}", de.Key, de.Value)
        Next
        Console.WriteLine()
    End Sub
End Class
' This code produces the following output.
' 
' Initially,
'    Count    : 5
'    Values:
'         -KEY-   -VALUE-
'         two:    quick
'         five:   jumps
'         one:    The
'         three:  brown
'         four:   fox
'
' After Clear,
'    Count    : 0
'    Values:
'         -KEY-   -VALUE-
'
注解
Count 将设置为零,同时还会释放集合元素中其他对象的引用。 容量保持不变。
此方法是一个 O(n) 操作,其中 n 为 Count。