Hashtable.Clear Hashtable.Clear Hashtable.Clear Hashtable.Clear Method

Определение

Удаляет из коллекции Hashtable все элементы.Removes all elements from the Hashtable.

public:
 virtual void Clear();
public virtual void Clear ();
abstract member Clear : unit -> unit
override this.Clear : unit -> unit
Public Overridable Sub Clear ()

Реализации

Исключения

Объект Hashtable доступен только для чтения.The Hashtable is read-only.

Примеры

В следующем примере показано, как очистить значения Hashtable.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", "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 'Main


    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 'PrintKeysAndValues

End Class 'SamplesHashtable 


' 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имеет значение 0, а ссылки на другие объекты из элементов коллекции также освобождаются.Count is set to zero, and references to other objects from elements of the collection are also released. Емкость остается неизменной.The capacity remains unchanged.

Этот метод является операцией On(), где n имеет Count.This method is an O(n) operation, where n is Count.

Применяется к

Дополнительно