指定された順序に基づいてリストを並べ替える
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 サイトの他の関連記事を参照してください。