List 実験中

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {

            // キーの降順にソートする
            List<KeyValuePair<int, string>> list = new List<KeyValuePair<int, string>>();
            KeyValuePair<int, string> vp1 = new KeyValuePair<int, string>(1, "AAA");
            KeyValuePair<int, string> vp2 = new KeyValuePair<int, string>(2, "BBB");
            KeyValuePair<int, string> vp3 = new KeyValuePair<int, string>(3, "CCC");

            list.Add(vp1);
            list.Add(vp2);
            list.Add(vp3);

            list.Sort((a, b) => b.Key - a.Key);
            Console.WriteLine(list[0]);
            Console.WriteLine(list[1]);
            Console.WriteLine(list[2]);

        }
    }

}

 

keyValuePair

コンストラクタに渡された キー と 値を保持。

key , value , プロパティ から

キー と 値を返すだけの構造体。

 

csharp.keicode.com

 

それにしても、

コレクション と 構造体

の使い分けってなんだろなー。

foreach でディクショナリを列挙すると、ひとつひとつの要素の型は、KeyValuePair という型になっていることがわかりますね。 - See more at: http://csharp.keicode.com/basic/collections-dictionary-keyvalue.php#sthash.aSo8MvKI.dpuf

 

 

List<KeyValuePair<int, string>> list

 

で構造体を定義。

 KeyValuePair<int, string> vp1 = new KeyValuePair<int, string> (1, "AAA");

 

構造体をnew でインスタンス化 引数も(1, "AAA");を持たせて定義。

 

            list.Sort((a, b) => b.Key - a.Key);

 

これがなー。

どういう意味じゃロ?

csharp.sevendays-study.com

foreach でディクショナリを列挙すると、ひとつひとつの要素の型は、KeyValuePair という型になっていることがわかりますね。 - See more at: http://csharp.keicode.com/basic/collections-dictionary-keyvalue.php#sthash.aSo8MvKI.dpuf
foreach でディクショナリを列挙すると、ひとつひとつの要素の型は、KeyValuePair という型になっていることがわかりますね。 - See more at: http://csharp.keicode.com/basic/collections-dictionary-keyvalue.php#sthash.aSo8MvKI.dpuf
foreach でディクショナリを列挙すると、ひとつひとつの要素の型は、KeyValuePair という型になっていることがわかりますね。 - See more at: http://csharp.keicode.com/basic/collections-dictionary-keyvalue.php#sthash.aSo8MvKI.dpuf