Java の Arrays.sort を使用した最初の列による 2D 配列のソート
Java では、最初の列は、Comparator を 2 番目の引数として受け取るオーバーロードされた Arrays.sort メソッドを使用して実現できます。この Comparator を使用すると、配列要素を並べ替えるためのカスタム比較ロジックを指定できます。
最初の列の値を使用して 2D 配列を並べ替えるには、次の手順に従います。
次の Comparator 実装を作成します。部分配列の最初の要素を比較します。これは、Double 値を比較する Double.compare メソッドを使用して実行できます。
Comparator<double[]> comparator = (a, b) -> Double.compare(a[0], b[0]);
配列と Comparator を引数として Arrays.sort メソッドを呼び出します。
Arrays.sort(array, comparator);
または、次のようにします。 Java 8 以降を使用している場合は、ラムダ関数を使用してコンパレータを簡素化できます:
Arrays.sort(array, Comparator.comparingDouble(a -> a[0]));
例:
次の 2D 配列 myArr を考えてみましょう。 :
double[][] myArr = { {1, 5}, {13, 1.55}, {12, 100.6}, {12.1, .85} };
上記のアプローチを使用して myArr をソートした後、最初の列の値に基づいてソートされます:
1 5 12 100.6 12.1 .85 13 1.55
以上がJava で 2D 配列を最初の列でソートするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。