Hashtable.Remove 方法
从 Hashtable 中移除带有指定键的元素。
**命名空间:**System.Collections
**程序集:**mscorlib(在 mscorlib.dll 中)
语法
声明
Public Overridable Sub Remove ( _
key As Object _
)
用法
Dim instance As Hashtable
Dim key As Object
instance.Remove(key)
public virtual void Remove (
Object key
)
public:
virtual void Remove (
Object^ key
)
public void Remove (
Object key
)
public function Remove (
key : Object
)
参数
- key
要移除的元素的键。
异常
异常类型 | 条件 |
---|---|
key 为 空引用(在 Visual Basic 中为 Nothing)。 |
|
Hashtable 为只读。 - 或 - Hashtable 具有固定大小。 |
备注
如果 Hashtable 不包含带有指定键的元素,则 Hashtable 保持不变。不引发异常。
此方法是 O(1) 操作。
示例
下面的示例说明如何移除 Hashtable 中的元素。
Imports System
Imports System.Collections
Imports Microsoft.VisualBasic
Public Class SamplesHashtable
Public Shared Sub Main()
' Creates and initializes a new Hashtable.
Dim myHT As New Hashtable()
myHT.Add("1a", "The")
myHT.Add("1b", "quick")
myHT.Add("1c", "brown")
myHT.Add("2a", "fox")
myHT.Add("2b", "jumped")
myHT.Add("2c", "over")
myHT.Add("3a", "the")
myHT.Add("3b", "lazy")
myHT.Add("3c", "dog")
' Displays the Hashtable.
Console.WriteLine("The Hashtable initially contains the following:")
PrintKeysAndValues(myHT)
' Removes the element with the key "3b".
myHT.Remove("3b")
' Displays the current state of the Hashtable.
Console.WriteLine("After removing ""lazy"":")
PrintKeysAndValues(myHT)
End Sub
Public Shared Sub PrintKeysAndValues(myHT As Hashtable)
Dim de As DictionaryEntry
For Each de In myHT
Console.WriteLine(" {0}: {1}", de.Key, de.Value)
Next de
Console.WriteLine()
End Sub
End Class
' This code produces the following output.
'
'The Hashtable initially contains the following:
' 2c: over
' 3a: the
' 2b: jumped
' 3b: lazy
' 1b: quick
' 3c: dog
' 2a: fox
' 1c: brown
' 1a: The
'
'After removing "lazy":
' 2c: over
' 3a: the
' 2b: jumped
' 1b: quick
' 3c: dog
' 2a: fox
' 1c: brown
' 1a: The
using System;
using System.Collections;
public class SamplesHashtable {
public static void Main() {
// Creates and initializes a new Hashtable.
Hashtable myHT = new Hashtable();
myHT.Add( "1a", "The" );
myHT.Add( "1b", "quick" );
myHT.Add( "1c", "brown" );
myHT.Add( "2a", "fox" );
myHT.Add( "2b", "jumped" );
myHT.Add( "2c", "over" );
myHT.Add( "3a", "the" );
myHT.Add( "3b", "lazy" );
myHT.Add( "3c", "dog" );
// Displays the Hashtable.
Console.WriteLine( "The Hashtable initially contains the following:" );
PrintKeysAndValues( myHT );
// Removes the element with the key "3b".
myHT.Remove( "3b" );
// Displays the current state of the Hashtable.
Console.WriteLine( "After removing \"lazy\":" );
PrintKeysAndValues( myHT );
}
public static void PrintKeysAndValues( Hashtable myHT ) {
foreach ( DictionaryEntry de in myHT )
Console.WriteLine( " {0}: {1}", de.Key, de.Value );
Console.WriteLine();
}
}
/*
This code produces the following output.
The Hashtable initially contains the following:
2c: over
3a: the
2b: jumped
3b: lazy
1b: quick
3c: dog
2a: fox
1c: brown
1a: The
After removing "lazy":
2c: over
3a: the
2b: jumped
1b: quick
3c: dog
2a: fox
1c: brown
1a: The
*/
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( "1a", "The" );
myHT->Add( "1b", "quick" );
myHT->Add( "1c", "brown" );
myHT->Add( "2a", "fox" );
myHT->Add( "2b", "jumped" );
myHT->Add( "2c", "over" );
myHT->Add( "3a", "the" );
myHT->Add( "3b", "lazy" );
myHT->Add( "3c", "dog" );
// Displays the Hashtable.
Console::WriteLine( "The Hashtable initially contains the following:" );
PrintKeysAndValues( myHT );
// Removes the element with the key "3b".
myHT->Remove( "3b" );
// Displays the current state of the Hashtable.
Console::WriteLine( "After removing \"lazy\":" );
PrintKeysAndValues( myHT );
}
void PrintKeysAndValues( Hashtable^ myHT )
{
IEnumerator^ myEnum = myHT->GetEnumerator();
while ( myEnum->MoveNext() )
{
DictionaryEntry de = *safe_cast<DictionaryEntry ^>(myEnum->Current);
Console::WriteLine( " {0}: {1}", de.Key, de.Value );
}
Console::WriteLine();
}
/*
This code produces the following output.
The Hashtable initially contains the following:
2c: over
3a: the
2b: jumped
3b: lazy
1b: quick
3c: dog
2a: fox
1c: brown
1a: The
After removing "lazy":
2c: over
3a: the
2b: jumped
1b: quick
3c: dog
2a: fox
1c: brown
1a: The
*/
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("1a", "The");
myHT.Add("1b", "quick");
myHT.Add("1c", "brown");
myHT.Add("2a", "fox");
myHT.Add("2b", "jumped");
myHT.Add("2c", "over");
myHT.Add("3a", "the");
myHT.Add("3b", "lazy");
myHT.Add("3c", "dog");
// Displays the Hashtable.
Console.WriteLine("The Hashtable initially contains the following:");
PrintKeysAndValues(myHT);
// Removes the element with the key "3b".
myHT.Remove("3b");
// Displays the current state of the Hashtable.
Console.WriteLine("After removing \"lazy\":");
PrintKeysAndValues(myHT);
} //main
public static void PrintKeysAndValues(Hashtable myHT)
{
IEnumerator myEnumerator = myHT.GetEnumerator();
while (myEnumerator.MoveNext()) {
DictionaryEntry de = (DictionaryEntry)myEnumerator.get_Current();
Console.WriteLine(" {0}: {1}", de.get_Key(), de.get_Value());
}
Console.WriteLine();
} //PrintKeysAndValues
} //SamplesHashtable
/*
This code produces the following output.
The Hashtable initially contains the following:
2c: over
3a: the
2b: jumped
3b: lazy
1b: quick
3c: dog
2a: fox
1c: brown
1a: The
After removing "lazy":
2c: over
3a: the
2b: jumped
1b: quick
3c: dog
2a: fox
1c: brown
1a: The
*/
import System
import System.Collections
import Microsoft.VisualBasic
// Creates and initializes a new Hashtable.
var myHT : Hashtable = new Hashtable()
myHT.Add("1a", "The")
myHT.Add("1b", "quick")
myHT.Add("1c", "brown")
myHT.Add("2a", "fox")
myHT.Add("2b", "jumped")
myHT.Add("2c", "over")
myHT.Add("3a", "the")
myHT.Add("3b", "lazy")
myHT.Add("3c", "dog")
// Displays the Hashtable.
Console.WriteLine("The Hashtable initially contains the following:")
PrintKeysAndValues(myHT)
// Removes the element with the key "3b".
myHT.Remove("3b")
// Displays the current state of the Hashtable.
Console.WriteLine("After removing \"lazy\":")
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.
//
// The Hashtable initially contains the following:
// -KEY- -VALUE-
// 3a: the
// 3c: dog
// 3b: lazy
// 1c: brown
// 1b: quick
// 1a: The
// 2a: fox
// 2b: jumped
// 2c: over
//
// After removing "lazy":
// -KEY- -VALUE-
// 3a: the
// 3c: dog
// 1c: brown
// 1b: quick
// 1a: The
// 2a: fox
// 2b: jumped
// 2c: over
平台
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 命名空间
Add
IDictionary.Remove