コレクション内の配列を並べ替えるにはどうすればよいですか?

マイケファー:

オブジェクトのリストがあります。それらのオブジェクトには、(他のものとともに)プライベートint配列があります(それが役立つ場合は、リストに転送できます)。この配列のパブリックゲッターがあります。すべての配列は同じサイズです。

このように配列に基づいてオブジェクトを並べ替えたい:

Unsorted:
{[0, 1, 4, 5], 
 [0, 0, 2, 3],
 [0, 1, 1, 2]}

Sorted:
{[0, 0, 2, 3],
 [0, 1, 1, 2],
 [0, 1, 4, 5]}

言葉では(それは辞書式と呼ばれます):

  • 各配列の最初のintを比較します
  • 等しい場合は、各配列の次のintを比較します(以下同様)。
  • それらが等しくない場合、比較の結果は最終結果です。

たとえば、通常のコンパレータを使用して配列の最初の要素のみを検索できますが、すべてを検索する方法がわかりません。

ポール・ボディントン:

素晴らしいJava 8ソリューションは

static final Comparator<CustomObject> COMPARATOR = (o1, o2) -> {
    int[] arr1 = o1.getArray();
    int[] arr2 = o2.getArray();
    return IntStream.range(0, arr1.length)
                    .map(i -> Integer.compare(arr1[i], arr2[i]))
                    .filter(i -> i != 0)
                    .findFirst()
                    .orElse(0);
};

次に、を指定するとList<CustomObject>、次のことができます

list.sort(COMPARATOR);

Comparator同じ長さの配列でのみ機能します。変更することもできます)。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

配列の順序を使用してこのコレクションを並べ替えるにはどうすればよいですか?

分類Dev

コレクションを並べ替えて、Javaの上部/下部のデフォルト値を取得するにはどうすればよいですか?

分類Dev

カスタムエンティティのコレクションを並べ替えるにはどうすればよいですか?

分類Dev

Shopifyコレクションをオプションで並べ替えて選択した値を表示させるにはどうすればよいですか?ロード後、デフォルトの「並べ替え」に戻ります

分類Dev

コレクション内のメッセージに応じて、コレクション間でmpsc :: Receiverを並べ替えるにはどうすればよいですか?

分類Dev

コレクションをnullで並べ替え、後でリストを反転するにはどうすればよいですか?

分類Dev

配列内のオブジェクトを日付で並べ替える新しい配列に配置するにはどうすればよいですか?

分類Dev

コレクションを見つけて制限する前に並べ替えるにはどうすればよいですか?

分類Dev

Eclipseコレクションライブラリを使用して、値でMutableMapを並べ替えるにはどうすればよいですか?

分類Dev

PHP配列インデックスを並べ替えるにはどうすればよいですか?

分類Dev

配列を並べ替えるにはどうすればよいですか?

分類Dev

パンダで文字列内の数字を並べ替えるにはどうすればよいですか?

分類Dev

配列内のオブジェクトの配列を文字列値で並べ替えるにはどうすればよいですか?

分類Dev

さまざまなJavaScript環境でISO時間コレクションを並べ替えるにはどうすればよいですか?

分類Dev

クラスの配列を並べ替えるにはどうすればよいですか?

分類Dev

コンパレータを使用してコレクション内の複数のフィールドを並べ替えるにはどうすればよいですか?

分類Dev

子配列jsの合計で配列を並べ替えるにはどうすればよいですか?

分類Dev

リンクリスト内の名前を並べ替えるにはどうすればよいですか?

分類Dev

Railsのハッシュの配列のすべての値を並べ替えるにはどうすればよいですか?モンゴ

分類Dev

別の配列の並べ替え順序に基づいて複数の配列を並べ替えるにはどうすればよいですか?

分類Dev

文字列の最初の文字で配列を並べ替えるにはどうすればよいですか?

分類Dev

構造体の配列をすばやく並べ替えるにはどうすればよいですか

分類Dev

すべての列に対して一般的な並べ替えオプションSelectOptを作成するにはどうすればよいですか?

分類Dev

平日の文字列の配列を並べ替えるにはどうすればよいですか?

分類Dev

配列内の「sortby」キーでこのオブジェクトを並べ替えるにはどうすればよいですか?

分類Dev

この配列をこの値で並べ替えるにはどうすればよいですか?

分類Dev

PHPでコンマ区切りの文字列を使用して配列を並べ替えるにはどうすればよいですか?

分類Dev

オブジェクトの配列をキーで並べ替えてから、他のキーを並べ替えられた順序で新しい配列にプッシュするにはどうすればよいですか?

分類Dev

すべてを反復せずに、事前に並べ替えられた配列内の要素を見つけるにはどうすればよいですか?

Related 関連記事

  1. 1

    配列の順序を使用してこのコレクションを並べ替えるにはどうすればよいですか?

  2. 2

    コレクションを並べ替えて、Javaの上部/下部のデフォルト値を取得するにはどうすればよいですか?

  3. 3

    カスタムエンティティのコレクションを並べ替えるにはどうすればよいですか?

  4. 4

    Shopifyコレクションをオプションで並べ替えて選択した値を表示させるにはどうすればよいですか?ロード後、デフォルトの「並べ替え」に戻ります

  5. 5

    コレクション内のメッセージに応じて、コレクション間でmpsc :: Receiverを並べ替えるにはどうすればよいですか?

  6. 6

    コレクションをnullで並べ替え、後でリストを反転するにはどうすればよいですか?

  7. 7

    配列内のオブジェクトを日付で並べ替える新しい配列に配置するにはどうすればよいですか?

  8. 8

    コレクションを見つけて制限する前に並べ替えるにはどうすればよいですか?

  9. 9

    Eclipseコレクションライブラリを使用して、値でMutableMapを並べ替えるにはどうすればよいですか?

  10. 10

    PHP配列インデックスを並べ替えるにはどうすればよいですか?

  11. 11

    配列を並べ替えるにはどうすればよいですか?

  12. 12

    パンダで文字列内の数字を並べ替えるにはどうすればよいですか?

  13. 13

    配列内のオブジェクトの配列を文字列値で並べ替えるにはどうすればよいですか?

  14. 14

    さまざまなJavaScript環境でISO時間コレクションを並べ替えるにはどうすればよいですか?

  15. 15

    クラスの配列を並べ替えるにはどうすればよいですか?

  16. 16

    コンパレータを使用してコレクション内の複数のフィールドを並べ替えるにはどうすればよいですか?

  17. 17

    子配列jsの合計で配列を並べ替えるにはどうすればよいですか?

  18. 18

    リンクリスト内の名前を並べ替えるにはどうすればよいですか?

  19. 19

    Railsのハッシュの配列のすべての値を並べ替えるにはどうすればよいですか?モンゴ

  20. 20

    別の配列の並べ替え順序に基づいて複数の配列を並べ替えるにはどうすればよいですか?

  21. 21

    文字列の最初の文字で配列を並べ替えるにはどうすればよいですか?

  22. 22

    構造体の配列をすばやく並べ替えるにはどうすればよいですか

  23. 23

    すべての列に対して一般的な並べ替えオプションSelectOptを作成するにはどうすればよいですか?

  24. 24

    平日の文字列の配列を並べ替えるにはどうすればよいですか?

  25. 25

    配列内の「sortby」キーでこのオブジェクトを並べ替えるにはどうすればよいですか?

  26. 26

    この配列をこの値で並べ替えるにはどうすればよいですか?

  27. 27

    PHPでコンマ区切りの文字列を使用して配列を並べ替えるにはどうすればよいですか?

  28. 28

    オブジェクトの配列をキーで並べ替えてから、他のキーを並べ替えられた順序で新しい配列にプッシュするにはどうすればよいですか?

  29. 29

    すべてを反復せずに、事前に並べ替えられた配列内の要素を見つけるにはどうすればよいですか?

ホットタグ

アーカイブ