これを行う最も簡単な方法は、Tupleクラスを使用することです。ジェネリック パラメーターと共に使用Tupleして、クラスを組み合わせてタプルを形成できます。たとえば、Tuple<string, int>またはTuple<string, int, int?, char>. 2 パラメータ バージョンのドキュメントは次のとおりです。あなたが説明したケースでは、おそらく type のインスタンスが必要ですTuple<string, int>[]。
、などのメソッドTupleを使用しての要素にアクセスできます。ItemXmyTuple.Item1myTuple.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