StringDictionary に特定のキーが格納されているかどうかを確認します。
Public Overridable Function ContainsKey( _
ByVal key As String _) As Boolean
[C#]
public virtual bool ContainsKey(stringkey);
[C++]
public: virtual bool ContainsKey(String* key);
[JScript]
public function ContainsKey(
key : String) : Boolean;
パラメータ
- key
StringDictionary 内で検索されるキー。
戻り値
指定したキーを持つエントリが StringDictionary に格納されている場合は true 。それ以外の場合は false 。
例外
例外の種類 | 条件 |
---|---|
ArgumentNullException | キーが null 参照 (Visual Basic では Nothing) です。 |
解説
この実装は O(1) 操作です。
キーは大文字と小文字を区別せずに処理されます。つまり、キーは使用される前に小文字に変換されます。
使用例
[Visual Basic, C#, C++] StringDictionary の要素を検索する例を次に示します。
Imports System
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 'Main
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 'PrintKeysAndValues
End Class 'SamplesStringDictionary
'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".
[C#]
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".
*/
[C++]
#using <mscorlib.dll>
#using <System.dll>
using namespace System;
using namespace System::Collections;
using namespace System::Collections::Specialized;
void PrintKeysAndValues( StringDictionary* myCol ) {
Console::WriteLine( S" KEY VALUE" );
IEnumerator* enum0 = myCol->GetEnumerator();
while (enum0->MoveNext())
{
DictionaryEntry* de = __try_cast<DictionaryEntry*>(enum0->Current);
Console::WriteLine( S" {0,-10} {1}", de->Key, de->Value );
}
Console::WriteLine();
}
int main() {
// Creates and initializes a new StringDictionary.
StringDictionary* myCol = new StringDictionary();
myCol->Add( S"red", S"rojo" );
myCol->Add( S"green", S"verde" );
myCol->Add( S"blue", S"azul" );
// Displays the values in the StringDictionary.
Console::WriteLine( S"Initial contents of the StringDictionary:" );
PrintKeysAndValues( myCol );
// Searches for a key.
if ( myCol->ContainsKey( S"red" ) )
Console::WriteLine( S"The collection contains the key \"red\"." );
else
Console::WriteLine( S"The collection does not contain the key \"red\"." );
Console::WriteLine();
// Searches for a value.
if ( myCol->ContainsValue( S"amarillo" ) )
Console::WriteLine( S"The collection contains the value \"amarillo\"." );
else
Console::WriteLine( S"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".
*/
[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン をクリックします。
必要条件
プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ
参照
StringDictionary クラス | StringDictionary メンバ | System.Collections.Specialized 名前空間 | カルチャを認識しない文字列操作の実行