いつもお世話になっております。
Dictionary型を使用した要素取得方法をご教示ください。
●実現したいこと
・都市名を並び替え、値が小さい3つをキーと一緒に表示させる(下記「期待する実行結果」を参照ください)
●現状
・ソートと、都市名、値の表示(ただし、全件表示している)
●現状の実行結果
////////
"札幌", 1
"東京", 2
"名古屋", 3
"大阪", 4
"博多", 5
////////
●期待する実行結果
////////
"札幌", 1
"東京", 2
"名古屋", 3
////////
static void Main(string[] args) { Dictionary<string, int> city = new Dictionary<string, int>(); city.Add("東京", 2); city.Add("大阪", 4); city.Add("名古屋", 3); city.Add("博多", 5); city.Add("札幌", 1); var cityName = city.OrderBy((x) => x.Value); foreach(var cityList in cityName) { Console.WriteLine(string.Format("{0}:{1}", cityList.Key, cityList.Value)); } }
以上です。よろしくお願いいたします。
開発環境を書いてください。
コードは ``` と ``` で囲ってください。インデントされて見やすくなるので。
アップされているコードの結果とがどうなるのか、期待する結果とはどう異なるのかも書いてください。
失礼いたしました。
ご指摘いただいた点、修正いたしました。
Take(3) を追加して以下のようにすれば一応「期待する実行結果」のようになりますが、それでは目的は果たせませんか?
var cityName = city.OrderBy((x) => x.Value).Take(3);
回答ありがとうございます。
ご教示いただいた方法で、実現できました。
お手数ですが、回答欄に解決した方法を書いて、それで解決したということでこのスレッドはクローズ願います。
かしこまりました。
回答1件
あなたの回答
tips
プレビュー