この記事は機械翻訳されています。英語版の記事を表示するには、[英語] のチェック ボックスをオンにしてください。また、テキストにマウス ポインターを合わせると、ポップアップ ウィンドウに英語のテキストを表示することもできます。
翻訳
英語

OrderedDictionary クラス

 

公開日: 2016年10月

キーまたはインデックスからアクセスできるキーと値のペアのコレクションを表します。

名前空間:   System.Collections.Specialized
アセンブリ:  System (System.dll 内)

System.Object
  System.Collections.Specialized.OrderedDictionary
    System.Web.Configuration.AdapterDictionary

[SerializableAttribute]
public class OrderedDictionary : IOrderedDictionary, IDictionary, 
	ICollection, IEnumerable, ISerializable, IDeserializationCallback

名前説明
System_CAPS_pubmethodOrderedDictionary()

OrderedDictionary クラスの新しいインスタンスを初期化します。

System_CAPS_pubmethodOrderedDictionary(IEqualityComparer)

新しいインスタンスを初期化、 OrderedDictionary クラスの指定された比較子を使用します。

System_CAPS_pubmethodOrderedDictionary(Int32)

新しいインスタンスを初期化、 OrderedDictionary クラスの指定した初期量を使用します。

System_CAPS_pubmethodOrderedDictionary(Int32, IEqualityComparer)

新しいインスタンスを初期化、 OrderedDictionary クラスの指定した初期量と比較子を使用します。

System_CAPS_protmethodOrderedDictionary(SerializationInfo, StreamingContext)

新しいインスタンスを初期化、 OrderedDictionary を指定してシリアル化できるクラス SerializationInfoStreamingContext オブジェクトです。

名前説明
System_CAPS_pubpropertyCount

取得の数のキー/値のペアに含まれている、 OrderedDictionary コレクションです。

System_CAPS_pubpropertyIsReadOnly

OrderedDictionary コレクションが読み取り専用かどうかを示す値を取得します。

System_CAPS_pubpropertyItem[Int32]

指定したインデックス位置にある値を取得または設定します。

System_CAPS_pubpropertyItem[Object]

指定したキーの値を取得または設定します。

System_CAPS_pubpropertyKeys

取得、 ICollection 内のキーを格納するオブジェクト、 OrderedDictionary コレクションです。

System_CAPS_pubpropertyValues

取得、 ICollection オブジェクトの値を含む、 OrderedDictionary コレクションです。

名前説明
System_CAPS_pubmethodAdd(Object, Object)

指定したキーと値を持つエントリを追加、 OrderedDictionary 利用可能な最小のインデックスを持つコレクション。

System_CAPS_pubmethodAsReadOnly()

現在の読み取り専用コピーを返します OrderedDictionary コレクションです。

System_CAPS_pubmethodClear()

すべての要素を削除、 OrderedDictionary コレクションです。

System_CAPS_pubmethodContains(Object)

指定するかどうか、 OrderedDictionary コレクションには、特定のキーが含まれています。

System_CAPS_pubmethodCopyTo(Array, Int32)

コピー、 OrderedDictionary 要素を 1 次元 Array オブジェクトを指定したインデックス位置。

System_CAPS_pubmethodEquals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。(Object から継承されます。)

System_CAPS_protmethodFinalize()

オブジェクトが、ガベージ コレクションによって収集される前に、リソースの解放とその他のクリーンアップ操作の実行を試みることができるようにします。(Object から継承されます。)

System_CAPS_pubmethodGetEnumerator()

返します。、 IDictionaryEnumerator を反復処理するオブジェクト、 OrderedDictionary コレクションです。

System_CAPS_pubmethodGetHashCode()

既定のハッシュ関数として機能します。(Object から継承されます。)

System_CAPS_pubmethodGetObjectData(SerializationInfo, StreamingContext)

実装して、 ISerializable インターフェイスし、シリアル化するために必要なデータを返す、 OrderedDictionary コレクションです。

System_CAPS_pubmethodGetType()

現在のインスタンスの Type を取得します。(Object から継承されます。)

System_CAPS_pubmethodInsert(Int32, Object, Object)

新しいエントリを挿入、 OrderedDictionary 指定したキーと指定したインデックス位置に値を持つコレクション。

System_CAPS_protmethodMemberwiseClone()

現在の Object の簡易コピーを作成します。(Object から継承されます。)

System_CAPS_protmethodOnDeserialization(Object)

ISerializable インターフェイスを実装し、逆シリアル化が完了したときに逆シリアル化イベントによってコールバックされます。

System_CAPS_pubmethodRemove(Object)

指定したキーを持つエントリを削除、 OrderedDictionary コレクションです。

System_CAPS_pubmethodRemoveAt(Int32)

指定したインデックスにあるエントリを削除、 OrderedDictionary コレクションです。

System_CAPS_pubmethodToString()

現在のオブジェクトを表す文字列を返します。(Object から継承されます。)

名前説明
System_CAPS_pubinterfaceSystem_CAPS_privmethodIEnumerable.GetEnumerator()

この API は 製品 インフラストラクチャをサポートします。コードから直接使用するためのものではありません。 返します。、 IDictionaryEnumerator を反復処理するオブジェクト、 OrderedDictionary コレクションです。

System_CAPS_pubinterfaceSystem_CAPS_privmethodIDeserializationCallback.OnDeserialization(Object)

ISerializable インターフェイスを実装し、逆シリアル化が完了したときに逆シリアル化イベントによってコールバックされます。

System_CAPS_pubinterfaceSystem_CAPS_privpropertyICollection.IsSynchronized

アクセスをするかどうかを示す値を取得、 OrderedDictionary オブジェクトが同期されている (スレッド セーフ)。

System_CAPS_pubinterfaceSystem_CAPS_privpropertyICollection.SyncRoot

OrderedDictionary オブジェクトへのアクセスを同期するために使用できるオブジェクトを取得します。

System_CAPS_pubinterfaceSystem_CAPS_privpropertyIDictionary.IsFixedSize

OrderedDictionary が固定サイズかどうかを示す値を取得します。

名前説明
System_CAPS_pubmethodAsParallel()

オーバーロードされます。クエリの並列化を有効にします。(ParallelEnumerable によって定義されています。)

System_CAPS_pubmethodAsQueryable()

オーバーロードされます。変換、 IEnumerable に、 IQueryableです。(Queryable によって定義されています。)

System_CAPS_pubmethodCast<TResult>()

要素をキャスト、 IEnumerable 指定した型にします。(Enumerable によって定義されています。)

System_CAPS_pubmethodOfType<TResult>()

要素をフィルター処理、 IEnumerable 、指定した型に基づいています。(Enumerable によって定義されています。)

各要素に格納されているキー/値ペアは、 DictionaryEntry オブジェクトです。 キーには null, 、値を指定できますが、します。

要素、 OrderedDictionary の要素とは異なり、キーによって並べ替えられていない、 SortedDictionary<TKey, TValue> クラスです。 要素は、キーまたはインデックスのいずれかにアクセスすることができます。

foreach C# 言語のステートメント (For Each Visual Basic で) は、コレクション内の各要素の型を返します。 オブジェクトです。 各要素から、 OrderedDictionary コレクションが、キー/値ペアで、要素型は、キーの型または値の型ではありません。 代わりに、要素型は DictionaryEntryです。 次のコードは、c#、Visual Basic および C++ の構文を示しています。

foreach (DictionaryEntry de in myOrderedDictionary)
{
    //...
}

foreach ステートメントは、コレクションに書き込まないことから読み取り、列挙子のラッパーです。

次のコード例は、作成、カタログの作成および変更を示しています、 OrderedDictionary の内容を表示する 2 つの手法と同様に、コレクション、 OrderedDictionary: 1 つを使用して、 KeysValues プロパティおよびその他の列挙子からの作成、 GetEnumerator メソッドです。

// The following code example enumerates the elements of a OrderedDictionary.
using System;
using System.Collections;
using System.Collections.Specialized;

public class OrderedDictionarySample
{
    public static void Main()
    {

        // Creates and initializes a OrderedDictionary.
        OrderedDictionary myOrderedDictionary = new OrderedDictionary();
        myOrderedDictionary.Add("testKey1", "testValue1");
        myOrderedDictionary.Add("testKey2", "testValue2");
        myOrderedDictionary.Add("keyToDelete", "valueToDelete");
        myOrderedDictionary.Add("testKey3", "testValue3");

        ICollection keyCollection = myOrderedDictionary.Keys;
        ICollection valueCollection = myOrderedDictionary.Values;

        // Display the contents using the key and value collections
        DisplayContents(keyCollection, valueCollection, myOrderedDictionary.Count);

        // Modifying the OrderedDictionary
        if (!myOrderedDictionary.IsReadOnly)
        {
            // Insert a new key to the beginning of the OrderedDictionary
            myOrderedDictionary.Insert(0, "insertedKey1", "insertedValue1");

            // Modify the value of the entry with the key "testKey2"
            myOrderedDictionary["testKey2"] = "modifiedValue";

            // Remove the last entry from the OrderedDictionary: "testKey3"
            myOrderedDictionary.RemoveAt(myOrderedDictionary.Count - 1);

            // Remove the "keyToDelete" entry, if it exists
            if (myOrderedDictionary.Contains("keyToDelete"))
            {
                myOrderedDictionary.Remove("keyToDelete");
            }
        }

        Console.WriteLine(
            "{0}Displaying the entries of a modified OrderedDictionary.",
            Environment.NewLine);
        DisplayContents(keyCollection, valueCollection, myOrderedDictionary.Count);

        // Clear the OrderedDictionary and add new values
        myOrderedDictionary.Clear();
        myOrderedDictionary.Add("newKey1", "newValue1");
        myOrderedDictionary.Add("newKey2", "newValue2");
        myOrderedDictionary.Add("newKey3", "newValue3");

        // Display the contents of the "new" Dictionary using an enumerator
        IDictionaryEnumerator myEnumerator =
            myOrderedDictionary.GetEnumerator();

        Console.WriteLine(
            "{0}Displaying the entries of a \"new\" OrderedDictionary.",
            Environment.NewLine);

        DisplayEnumerator(myEnumerator);

        Console.ReadLine();
    }

    // Displays the contents of the OrderedDictionary from its keys and values
    public static void DisplayContents(
        ICollection keyCollection, ICollection valueCollection, int dictionarySize)
    {
        String[] myKeys = new String[dictionarySize];
        String[] myValues = new String[dictionarySize];
        keyCollection.CopyTo(myKeys, 0);
        valueCollection.CopyTo(myValues, 0);

        // Displays the contents of the OrderedDictionary
        Console.WriteLine("   INDEX KEY                       VALUE");
        for (int i = 0; i < dictionarySize; i++)
        {
            Console.WriteLine("   {0,-5} {1,-25} {2}",
                i, myKeys[i], myValues[i]);
        }
        Console.WriteLine();
    }

    // Displays the contents of the OrderedDictionary using its enumerator
    public static void DisplayEnumerator(IDictionaryEnumerator myEnumerator)
    {
        Console.WriteLine("   KEY                       VALUE");
        while (myEnumerator.MoveNext())
        {
            Console.WriteLine("   {0,-25} {1}",
                myEnumerator.Key, myEnumerator.Value);
        }
    }
}

/*
This code produces the following output.

   INDEX KEY                       VALUE
   0     testKey1                  testValue1
   1     testKey2                  testValue2
   2     keyToDelete               valueToDelete
   3     testKey3                  testValue3


Displaying the entries of a modified OrderedDictionary.
   INDEX KEY                       VALUE
   0     insertedKey1              insertedValue1
   1     testKey1                  testValue1
   2     testKey2                  modifiedValue


Displaying the entries of a "new" OrderedDictionary.
   KEY                       VALUE
   newKey1                   newValue1
   newKey2                   newValue2
   newKey3                   newValue3

*/

ユニバーサル Windows プラットフォーム
10 以降で使用可能
.NET Framework
2.0 以降で使用可能

この型のパブリック static (Visual Basic では Shared ) メンバーはスレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

トップに戻る
表示: