これを行う最も簡単な方法は、Tuple
クラスを使用することです。ジェネリック パラメーターと共に使用Tuple
して、クラスを組み合わせてタプルを形成できます。たとえば、Tuple<string, int>
またはTuple<string, int, int?, char>
. 2 パラメータ バージョンのドキュメントは次のとおりです。あなたが説明したケースでは、おそらく type のインスタンスが必要ですTuple<string, int>[]
。
、などのメソッドTuple
を使用しての要素にアクセスできます。ItemX
myTuple.Item1
myTuple.Item2
実際にタプルを作成するには、Tuple.Create
メソッドを使用することをお勧めします。例:は、アイテムが正しく設定されTuple.Create("hello", 1)
た を返します。Tuple<string, int>
これらのCreate
メソッドでは、ジェネリック パラメータを省略できます。
ちなみに、並べ替えは必要ないとおっしゃいました。new に対して LINQ クエリを実行することで、任意の並べ替えをかなり簡単に取得できますTuple<string, int>
(これは を実装しているため、LINQ の拡張機能をIEnumerable<Tuple<string, int>>
実行できます)。IEnumerable
たとえばint
、タプルの一部、次に `string 部分で並べ替えるには、次のようにします。
myTupleArray.OrderBy(t => t.Item2).ThenBy(t => t.Item2);
その他のオプションについては、OrderByDescending
およびも参照してください。ThenByDescending