C# 辞書

WBOY
リリース: 2024-09-03 15:31:59
オリジナル
1063 人が閲覧しました

C# の Dictionary クラスは、Dictionary として表されます。これは、複数の言語でアルファベット順にリストされた単語のコレクションとその定義で構成される英語の辞書に似たコレクションですが、C# の辞書はキーと値のコレクションで構成され、キーは単語を表し、値は定義を表します。この辞書 C# のクラスは System.Collection.Generics 名前空間に属し、Tkey がキーの型を表し、Tvalue が Tvalue の型と IDictionary の変数を表すジェネリック コレクション クラスです。クラスまたは辞書クラスは辞書内の任意のオブジェクトに割り当てることができます。

C# の Dictionary クラスの構文は次のとおりです。

IDictionary<TKey, TValue> variable_name = new Dictionary<TKey, TValue>();
ログイン後にコピー

または

Dictionary<TKey, TValue > variable_name = new Dictionary<TKey, TValue >();
ログイン後にコピー

C# の Dictionary クラスの動作

  • System.Collections.Generic 名前空間の重要なクラスの 1 つは、Dictionary です。クラス。
  • 汎用データ構造は、データ キーとそれに対応する値を含む C# の辞書クラスによって表されます。したがって、辞書のインスタンスを使用して、あらゆるタイプのデータを保存できます。
  • ICollection インターフェイスの拡張機能は IDictionary インターフェイスです。
  • 辞書クラスの Add メソッドは、辞書のインスタンスにオブジェクトを格納するために使用されます。
  • 辞書を使用すると、ボックス化とボックス化解除のオーバーヘッドがなくなります。

キーのみを取得するための Dictionary クラスの使用法を説明する以下の例を考えてみましょう:

using System;
using System.Collections.Generic;
//a class called program is defined
class program
{
// main method is called
public static void Main()
{
// a new dictionary is created with key type string and value type string
Dictionary<string, string> Dict = new Dictionary<string, string>();
// using add method in dictionary to add the objects to the dictionary
Dict.Add("A", "Karnataka");
Dict.Add("B", "Maharashtra");
Dict.Add("C", "Andra");
Dict.Add("D", "TamilNadu");
Dict.Add("E", "Delhi");
Dict.Add("F", "Goa");
// Finding the number of key value pairs in the dictionary
Console.WriteLine("The number of key value pairs in the dictionary are : " + Dict.Count);
// using the property of keys to get the keys alone from the dictionary
Dictionary<string, string>.KeyCollection key =  Dict.Keys;
// a foreach loop is used to loop around every key in the dictionary and to obtain each key value
foreach(string sh in key)
{
Console.WriteLine("The key is referred as = {0}", sh);
}
}
}
ログイン後にコピー

上記のプログラムの出力は、以下のスナップショットに示されているとおりです。

C# 辞書

上記のプログラムでは、プログラムは定義されたクラスです。次に、main メソッドが呼び出されます。新しい辞書は、キー型文字列と値型文字列を使用して作成されます。次に、辞書の add メソッドを使用してオブジェクトを辞書に追加します。次に、そのカウントを使用して、辞書内のキーと値のペアの数が見つかります。次に、キーのプロパティを使用して、辞書からキーのみを抽出します。次に、foreach ループを使用して、ディクショナリ内のすべてのキーをループし、各キーの値を取得します。プログラムの出力は、上のスナップショットに示されているとおりです。

C# 辞書のメソッド

C# の Dictionary クラスにはいくつかのメソッドがあります。それらは次のとおりです:

1.追加()

  • add() メソッドは、辞書のコレクションに項目を追加するために使用されます。
  • add() メソッドは、キーと値のペアを Dictionary のコレクションに追加するために使用されます。
  • 辞書クラスの add メソッドを示すために、以下の例を考えてみましょう:
using System;
using System.Collections.Generic;
//a class called check is defined
public class Check
{
//main method is called
public static void Main()
{
//a new dictionary is created with key type int and value type string
IDictionary<int, string> str = new Dictionary<int, string>();
//Add method is used to add objects to the dictionary
str.Add(3,"Green");
str.Add(1,"Saffron");
str.Add(2,"White");
str.Add(new KeyValuePair<int, string>(4, "Blue"));
//The number of objects in the dictionary is displayed using count
Console.WriteLine("The number of objects in the given dictionary is: {0} ", str.Count);
}
}
ログイン後にコピー

上記のプログラムの出力は、以下のスナップショットに示されているとおりです。

C# 辞書

2.  Remove()

Remove() メソッドは、指定された項目の最初の出現箇所を辞書から削除するために使用されます。

remove() メソッドは、キーとともに指定された要素を辞書オブジェクトから削除するために使用されます。

Dictionary クラスでの Remove() メソッドの使用法を示す以下の例を考えてみましょう:

using System;
using System.Collections.Generic;
//a class called check1 is defined
public class Check1
{
//main method is called
public static void Main()
{
//a new dictionary is created with key type int and value type string
IDictionary<int, string> str1 = new Dictionary<int, string>();
//Add method is used to add objects to the dictionary
str1.Add(3,"Green");
str1.Add(1,"Saffron");
str1.Add(2,"White");
str1.Add(new KeyValuePair<int, string>(4, "Blue"));
str1.Remove(1);
str1.Remove(new KeyValuePair<int, string>(2, "White"));
//The number of objects in the dictionary is displayed using count
Console.WriteLine("The number of objects in the given dictionary is: {0} ", str1.Count);
}
}
ログイン後にコピー

上記のプログラムの出力は、以下のスナップショットに示されているとおりです。

C# 辞書

3. ContainsKey()

ContainsKey() メソッドは、指定されたキーが Dictionary に存在するかどうかを確認するために使用されます

Dictionary クラスでの ContainsKey() メソッドの使用法を示す以下のプログラムを考えてみましょう:

using System;
using System.Collections.Generic;
//a class called2 check is defined
public class Check2
{
//main method is called
public static void Main()
{
//a new dictionary is created with key type int and value type string
IDictionary<int, string> str2 = new Dictionary<int, string>();
//Add method is used to add objects to the dictionary
str2.Add(3,"Green");
str2.Add(1,"Saffron");
str2.Add(2,"White");
str2.Add(new KeyValuePair<int, string>(4, "Blue"));
str2.Remove(1);
str2.Remove(new KeyValuePair<int, string>(2, "White"));
Console.WriteLine("If the key 3 is present?{0}", str2.ContainsKey(3));
Console.WriteLine("If the key 2 is present? {0}", str2.Contains(new KeyValuePair<int, string>(2, "White")));
//The number of objects in the dictionary is displayed using count
Console.WriteLine("The number of objects in the given dictionary is: {0} ", str2.Count);
}
}
ログイン後にコピー

上記のプログラムの出力は、以下のスナップショットに示されているとおりです。

C# 辞書

4. ContainsValue()

ContainsValue() メソッドは、指定された値が Dictionary に存在するかどうかを確認するために使用されます

Dictionary クラスでの ContainsValue() メソッドの使用法を示す以下のプログラムを考えてみましょう:

using System;
using System.Collections.Generic;
//a class called check3 is defined
public class Check3
{
//main method is called
public static void Main()
{
//a new dictionary is created with key type int and value type string
IDictionary<int, string> str2 = new Dictionary<int, string>();
//Add method is used to add objects to the dictionary
str2.Add(3,"Green");
str2.Add(1,"Saffron");
str2.Add(2,"White");
str2.Add(new KeyValuePair<int, string>(4, "Blue"));
str2.Remove(1);
str2.Remove(new KeyValuePair<int, string>(2, "White"));
Console.WriteLine("If the key 3 is present?{0}", str2.ContainsKey(3));
Console.WriteLine("If the key 2 is present? {0}", str2.Contains(new KeyValuePair<int, string>(2, "White")));
//new dictionary of both string key and string value types is defined
Dictionary<string, string> stri = new Dictionary<string, string>();
stri.Add("Flag","Green");
Console.WriteLine("If the value Green is present?{0}", stri.ContainsValue("Green"));
//The number of objects in the dictionary is displayed using count
Console.WriteLine("The number of objects in the given dictionary is: {0} ", str2.Count);
}
}
ログイン後にコピー

上記のプログラムの出力は、以下のスナップショットに示されているとおりです。

C# 辞書

5.クリア()

clear() メソッドは、辞書クラス内のすべてのオブジェクトをクリアするために使用されます。

Dictionary クラスでの ContainsValue() メソッドの使用法を示す以下のプログラムを考えてみましょう:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
//a class called check4 is defined
public class Check4
{
//main method is called
public static void Main()
{
//a new dictionary is created with key type int and value type string
IDictionary<int, string> str3 = new Dictionary<int, string>();
//Add method is used to add objects to the dictionary
str3.Add(3,"Green");
str3.Add(1,"Saffron");
str3.Add(2,"White");
str3.Add(new KeyValuePair<int, string>(4, "Blue"));
str3.Remove(1);
str3.Remove(new KeyValuePair<int, string>(2, "White"));
Console.WriteLine("If the key 3 is present?{0}", str3.ContainsKey(3));
Console.WriteLine("If the key 2 is present? {0}", str3.Contains(new KeyValuePair<int, string>(2, "White")));
//new dictionary of both string key and string value types is defined
Dictionary<string, string> stri1 = new Dictionary<string, string>();
stri1.Add("Flag","Green");
Console.WriteLine("If the value Green is present?{0}", stri1.ContainsValue("Green"));
//The number of objects in the dictionary is displayed using count
Console.WriteLine("The number of objects in the given dictionary is: {0} ", str3.Count);
Console.Clear();
}
}
ログイン後にコピー

以下のスナップショットに示すように、上記のプログラムの出力は空白です。

C# 辞書

6. TryGetValue()

TryGetValue() メソッドは、指定されたキーが存在するかどうかを確認し、存在しない場合は false を返します。指定されたキーが存在する場合、true を返し、指定された値を指定されたキーに割り当てます。

Consider the below program to demonstrate the usage of TryGetValue() method of Dictionary class:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
//a class called check4 is defined
public class Check4
{
//main method is called
public static void Main()
{
//a new dictionary is created with key type int and value type string
IDictionary<int, string> str3 = new Dictionary<int, string>();
//Add method is used to add objects to the dictionary
str3.Add(3,"Green");
str3.Add(1,"Saffron");
str3.Add(2,"White");
str3.Add(new KeyValuePair<int, string>(4, "Blue"));
str3.Remove(1);
str3.Remove(new KeyValuePair<int, string>(2, "White"));
Console.WriteLine("If the key 3 is present?{0}", str3.ContainsKey(3));
Console.WriteLine("If the key 2 is present? {0}", str3.Contains(new KeyValuePair<int, string>(2, "White")));
//new dictionary of both string key and string value types is defined
Dictionary<string, string> stri1 = new Dictionary<string, string>();
stri1.Add("Flag","Green");
Console.WriteLine("If the value Green is present?{0}", stri1.ContainsValue("Green"));
string res;
if(str3.TryGetValue(4, out res))
{
Console.WriteLine("The value of the specified key is {0}", res);
}
else
{
Console.WriteLine("The specified key is not present.");
}
//The number of objects in the dictionary is displayed using count
Console.WriteLine("The number of objects in the given dictionary is: {0} ", str3.Count);
}
}
ログイン後にコピー

The output of the above program is as shown in the snapshot below:

C# 辞書

Conclusion

In this tutorial, we understand the concept of Dictionary class in C# through definition, the syntax of Dictionary class in C#, working of Dictionary class, and their methods through programming examples and their outputs.

以上がC# 辞書の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート