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と メソッドをitem
使用して、 が存在するかどうかをitem
判断CompareToします。 以前のバージョンの.NET Frameworkでは、この決定は、コレクション内の オブジェクトで パラメーターの item
メソッドと CompareTo メソッドを使用Equalsして行われました。
適用対象
こちらもご覧ください
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET