StringDictionary.ContainsValue(String) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет, содержит ли 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 методов item
и CompareTo параметра для объектов в коллекции.