StringDictionary.ContainsValue(String) 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
判斷 StringDictionary 是否含有特定值。
public:
virtual bool ContainsValue(System::String ^ value);
public virtual bool ContainsValue (string value);
public virtual bool ContainsValue (string? value);
abstract member ContainsValue : string -> bool
override this.ContainsValue : string -> bool
Public Overridable Function ContainsValue (value As String) As Boolean
參數
- value
- String
要在 StringDictionary 中尋找的值。 這個值可以是 null
。
傳回
如果 true
包含具有指定值的項目,則為 StringDictionary,否則為 false
。
範例
下列程式代碼範例會搜尋 中的 StringDictionary專案。
#using <System.dll>
using namespace System;
using namespace System::Collections;
using namespace System::Collections::Specialized;
void PrintKeysAndValues( StringDictionary^ myCol )
{
Console::WriteLine( " KEY VALUE" );
IEnumerator^ enum0 = myCol->GetEnumerator();
while ( enum0->MoveNext() )
{
DictionaryEntry^ de = safe_cast<DictionaryEntry^>(enum0->Current);
Console::WriteLine( " {0,-10} {1}", de->Key, de->Value );
}
Console::WriteLine();
}
int main()
{
// Creates and initializes a new StringDictionary.
StringDictionary^ myCol = gcnew StringDictionary;
myCol->Add( "red", "rojo" );
myCol->Add( "green", "verde" );
myCol->Add( "blue", "azul" );
// Displays the values in the StringDictionary.
Console::WriteLine( "Initial contents of the StringDictionary:" );
PrintKeysAndValues( myCol );
// Searches for a key.
if ( myCol->ContainsKey( "red" ) )
Console::WriteLine( "The collection contains the key \"red\"." );
else
Console::WriteLine( "The collection does not contain the key \"red\"." );
Console::WriteLine();
// Searches for a value.
if ( myCol->ContainsValue( "amarillo" ) )
Console::WriteLine( "The collection contains the value \"amarillo\"." );
else
Console::WriteLine( "The collection does not contain the value \"amarillo\"." );
Console::WriteLine();
}
/*
This code produces the following output.
Initial contents of the StringDictionary:
KEY VALUE
green verde
red rojo
blue azul
The collection contains the key "red".
The collection does not contain the value "amarillo".
*/
using System;
using System.Collections;
using System.Collections.Specialized;
public class SamplesStringDictionary {
public static void Main() {
// Creates and initializes a new StringDictionary.
StringDictionary myCol = new StringDictionary();
myCol.Add( "red", "rojo" );
myCol.Add( "green", "verde" );
myCol.Add( "blue", "azul" );
// Displays the values in the StringDictionary.
Console.WriteLine( "Initial contents of the StringDictionary:" );
PrintKeysAndValues( myCol );
// Searches for a key.
if ( myCol.ContainsKey( "red" ) )
Console.WriteLine( "The collection contains the key \"red\"." );
else
Console.WriteLine( "The collection does not contain the key \"red\"." );
Console.WriteLine();
// Searches for a value.
if ( myCol.ContainsValue( "amarillo" ) )
Console.WriteLine( "The collection contains the value \"amarillo\"." );
else
Console.WriteLine( "The collection does not contain the value \"amarillo\"." );
Console.WriteLine();
}
public static void PrintKeysAndValues( StringDictionary myCol ) {
Console.WriteLine( " KEY VALUE" );
foreach ( DictionaryEntry de in myCol )
Console.WriteLine( " {0,-10} {1}", de.Key, de.Value );
Console.WriteLine();
}
}
/*
This code produces the following output.
Initial contents of the StringDictionary:
KEY VALUE
green verde
red rojo
blue azul
The collection contains the key "red".
The collection does not contain the value "amarillo".
*/
Imports System.Collections
Imports System.Collections.Specialized
Public Class SamplesStringDictionary
Public Shared Sub Main()
' Creates and initializes a new StringDictionary.
Dim myCol As New StringDictionary()
myCol.Add("red", "rojo")
myCol.Add("green", "verde")
myCol.Add("blue", "azul")
' Displays the values in the StringDictionary.
Console.WriteLine("Initial contents of the StringDictionary:")
PrintKeysAndValues(myCol)
' Searches for a key.
If myCol.ContainsKey("red") Then
Console.WriteLine("The collection contains the key ""red"".")
Else
Console.WriteLine("The collection does not contain the key ""red"".")
End If
Console.WriteLine()
' Searches for a value.
If myCol.ContainsValue("amarillo") Then
Console.WriteLine("The collection contains the value ""amarillo"".")
Else
Console.WriteLine("The collection does not contain the value ""amarillo"".")
End If
Console.WriteLine()
End Sub
Public Shared Sub PrintKeysAndValues(myCol As StringDictionary)
Dim de As DictionaryEntry
Console.WriteLine(" KEY VALUE")
For Each de In myCol
Console.WriteLine(" {0,-10} {1}", de.Key, de.Value)
Next de
Console.WriteLine()
End Sub
End Class
'This code produces the following output.
'
'Initial contents of the StringDictionary:
' KEY VALUE
' green verde
' red rojo
' blue azul
'
'The collection contains the key "red".
'
'The collection does not contain the value "amarillo".
備註
StringDictionary 元素的值會與使用 Object.Equals 方法的指定值進行比較。
此方法會執行線性搜尋;因此,平均運行時間會與 Count成正比。 也就是說,這個方法是 O () n
作業,其中 n
是 Count。
從 .NET Framework 2.0 開始,這個方法會使用 集合的物件 Equals 和 CompareTo 方法item
來判斷是否存在item
。 在舊版的 .NET Framework 中,此判斷是使用 Equals 集合中 物件上的 和 CompareTo 方法item
進行。