Hashtable.Clear 方法
从 Hashtable 中移除所有元素。
**命名空间:**System.Collections
**程序集:**mscorlib(在 mscorlib.dll 中)
语法
声明
Public Overridable Sub Clear
用法
Dim instance As Hashtable
instance.Clear
public virtual void Clear ()
public:
virtual void Clear ()
public void Clear ()
public function Clear ()
异常
异常类型 | 条件 |
---|---|
Hashtable 为只读。 |
备注
Count 被设置为零,并且对来自该集合元素的其他对象的引用也被释放。容量保持不变。
此方法的运算复杂度为 O(n),其中 n 是 Count。
示例
下面的示例说明如何清除 Hashtable 的值。
Imports System
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", "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)
End Sub 'Main
Public Shared Sub PrintKeysAndValues(myHT As Hashtable)
Console.WriteLine(vbTab + "-KEY-" + vbTab + "-VALUE-")
Dim de As DictionaryEntry
For Each de In myHT
Console.WriteLine(vbTab + "{0}:" + vbTab + "{1}", de.Key, de.Value)
Next de
Console.WriteLine()
End Sub 'PrintKeysAndValues
End Class 'SamplesHashtable
' 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-
'
using System;
using System.Collections;
public class SamplesHashtable {
public static void Main() {
// Creates and initializes a new Hashtable.
Hashtable myHT = new 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 );
}
public static void PrintKeysAndValues( Hashtable myHT ) {
Console.WriteLine( "\t-KEY-\t-VALUE-" );
foreach ( DictionaryEntry de in myHT )
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-
*/
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-
*/
import System.*;
import System.Collections.*;
public class SamplesHashtable
{
public static void main(String[] args)
{
// Creates and initializes a new Hashtable.
Hashtable myHT = new 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}",
System.Convert.ToString(myHT.get_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}",
System.Convert.ToString(myHT.get_Count()));
Console.WriteLine(" Values:");
PrintKeysAndValues(myHT);
} //main
public static void PrintKeysAndValues(Hashtable myHT)
{
Console.WriteLine("\t-KEY-\t-VALUE-");
IEnumerator myEnumerator = myHT.GetEnumerator();
while (myEnumerator.MoveNext()) {
DictionaryEntry de = (DictionaryEntry)myEnumerator.get_Current();
Console.WriteLine("\t{0}:\t{1}", de.get_Key(), de.get_Value());
}
Console.WriteLine();
} //PrintKeysAndValues
} //SamplesHashtable
/*
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-
*/
import System
import System.Collections
import Microsoft.VisualBasic
// Creates and initializes a new Hashtable.
var myHT : Hashtable = new 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)
function PrintKeysAndValues(myList : Hashtable){
var myEnumerator : IDictionaryEnumerator = myList.GetEnumerator()
Console.WriteLine("\t-KEY-\t-VALUE-")
while(myEnumerator.MoveNext())
Console.WriteLine("\t{0}:\t{1}", myEnumerator.Key, myEnumerator.Value)
Console.WriteLine()
}
// This code produces the following output.
//
// Initially,
// Count : 5
// Values:
// -KEY- -VALUE-
// five: jumped
// three: brown
// four: fox
// two: quick
// one: The
//
// After Clear,
// Count : 0
// Values:
// -KEY- -VALUE-
平台
Windows 98、Windows 2000 SP4、Windows CE、Windows Millennium Edition、Windows Mobile for Pocket PC、Windows Mobile for Smartphone、Windows Server 2003、Windows XP Media Center Edition、Windows XP Professional x64 Edition、Windows XP SP2、Windows XP Starter Edition
.NET Framework 并不是对每个平台的所有版本都提供支持。有关受支持版本的列表,请参见系统要求。
版本信息
.NET Framework
受以下版本支持:2.0、1.1、1.0
.NET Compact Framework
受以下版本支持:2.0、1.0
请参见
参考
Hashtable 类
Hashtable 成员
System.Collections 命名空间
IDictionary.Clear