1

列タイトルと情報を含むテーブルがあります。

インデックスがタイトルになる配列を作成したいと思います。そのインデックスの配列の実際の値は、同じ行の情報です。

したがって、そのような行が 3 つある場合:

Title      Info

ABC        Hi

DEF        Sup

GHI        Hello

をお願いしたいのですがStringArray["ABC"]、これは「こんにちは」を返します。

どうやってやるの?

みんなありがとう

4

4 に答える 4

5

Dictionary<String, String>文字列配列ではなく、が必要です。

var myStrings = new Dictionary<String, String>();
myStrings.Add("ABC", "Hi");
myStrings.Add("DEF", "Sup");
myStrings.Add("GHI", "Hello");

Console.WriteLine(myStrings["ABC"]);
于 2012-04-17T15:15:35.430 に答える
1

配列は、整数でのみインデックスを付けることができます。Dictionary<string, string>、またはを実装する他の型を使用するかIDictionary<string, string>、文字列インデクサーを使用して独自の型を実装する必要があります。

于 2012-04-17T15:16:29.240 に答える
1

それについては辞書を参照してください

あなたはこのようにすることができます

Dictionary<string, string> Book = new Dictionary<string, string>();

Book.Add("ABC","Hi");
Book.Add("DEF","Sup");
Book.Add("GHI","Hello");

などなど。

だからあなたが言うとき

Book["ABC"]それは戻ってきますHi

于 2012-04-17T15:17:29.287 に答える
1

辞書を使用して実装する必要があります。

var table = new Dictionary<string,string>(
{"ABC", "Hi"},
{"DEF", "Sup"},
{"GHI", "Hello"}
);

今、あなたはそれを使用することができます

var info = table["ABC"];

存在しないキーを使用すると例外がスローされることに注意する必要があります

TryGetValue を使用して、この例外を回避できます

string info;

if(!table.TryGetValue("ABC", out info))
{
  info = "default value if required";
}
于 2012-04-17T15:18:49.860 に答える