Rumah  >  Artikel  >  Java  >  Bagaimana untuk Mengisih Senarai Java Berdasarkan Susunan Senarai Lain?

Bagaimana untuk Mengisih Senarai Java Berdasarkan Susunan Senarai Lain?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-11-01 21:36:29710semak imbas

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

Mengisih Satu Senarai Java Berdasarkan Satu Lagi

Apabila menyusun semula elemen dalam senarai (listA), pengguna mungkin ingin mengekalkan susunan baharu itu apabila diperolehi semula. Disebabkan oleh kekangan, anda mungkin perlu mengisih listA selepas mendapatkan semula berdasarkan senarai lain (listB) yang mentakrifkan susunan yang diingini.

Untuk mencapai pengisihan ini, anda boleh memanfaatkan kaedah Collections.sort Java dengan pembanding tersuai. Fungsi pembanding harus membandingkan elemen berdasarkan indeksnya dalam listB.

Penyelesaian Java 8

<code class="java">Collections.sort(listToSort, Comparator.comparing(item -> listWithOrder.indexOf(item)));</code>

Penyelesaian Java 8 yang Diperbaiki

<code class="java">listToSort.sort(Comparator.comparingInt(listWithOrder::indexOf));</code>

Penyelesaian yang dipertingkatkan ini menggunakan comparingInt sebaliknya membandingkan, memberikan prestasi yang dipertingkatkan.

Atas ialah kandungan terperinci Bagaimana untuk Mengisih Senarai Java Berdasarkan Susunan Senarai Lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn