ホームページ > Java > &#&チュートリアル > Javaで別のリストの順序に基づいてリストを並べ替えるにはどうすればよいですか?

Javaで別のリストの順序に基づいてリストを並べ替えるにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-01 09:53:30
オリジナル
770 人が閲覧しました

How to Sort a List Based on the Order of Another List in Java?

指定された順序に基づいてリストを並べ替える

Java では、あるリストを別のリストの順序に基づいて並べ替えることができます。これは、データベースからアイテムを取得するときにアイテムの順序を維持したり、ユーザー設定に基づいて要素のリストを並べ替えたりするなど、さまざまなシナリオで役立ちます。

これを実現するには、Java の Collections.sort( ) メソッド。引数として Comparator を取ります。 Comparator は、リスト内の要素の順序付けルールを定義します。

Java 8 ソリューション

Java 8 では、Comparator.comparing() を使用してリストを並べ替えることができます。順序付きリストのindexOf()メソッドに基づきます。次のコード スニペットは、このアプローチを示しています。

<code class="java">Collections.sort(listToSort, Comparator.comparing(item -> listWithOrder.indexOf(item)));</code>
ログイン後にコピー

最適化された Java 8 ソリューション

パフォーマンスを向上させるために、代わりに Comparator.comparingInt() を使用できます。次のコード:

<code class="java">listToSort.sort(Comparator.comparingInt(listWithOrder::indexOf));</code>
ログイン後にコピー

あるリストを別のリストの順序に基づいて並べ替えることで、ソートされたリスト内の要素は、順序付きリスト内の要素と同じ相対順序を維持します。これは、Java プログラミングのさまざまなアプリケーションに使用できる強力なテクニックです。

以上がJavaで別のリストの順序に基づいてリストを並べ替えるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート