Rumah > Java > javaTutorial > teks badan

Bagaimana Mengisih Senarai Berdasarkan Susunan Senarai Lain di Jawa?

Mary-Kate Olsen
Lepaskan: 2024-11-01 09:53:30
asal
685 orang telah melayarinya

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

Isih Senarai Berdasarkan Susunan Diberi

Di Java, adalah mungkin untuk mengisih satu senarai berdasarkan susunan senarai lain. Ini boleh berguna dalam pelbagai senario, seperti mengekalkan susunan item apabila mendapatkannya daripada pangkalan data atau menyusun semula senarai elemen berdasarkan keutamaan pengguna.

Untuk mencapainya, kami boleh memanfaatkan Java's Collections.sort( ) kaedah, yang mengambil Pembanding sebagai hujah. Comparator mentakrifkan peraturan susunan untuk elemen dalam senarai.

Penyelesaian Java 8

Dalam Java 8, kita boleh menggunakan Comparator.comparing() untuk mengisih senarai berdasarkan kaedah indexOf() senarai tertib. Coretan kod berikut menunjukkan pendekatan ini:

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

Penyelesaian Java 8 Dioptimumkan

Untuk prestasi yang lebih baik, kita boleh menggunakan Comparator.comparingInt() sebaliknya, seperti yang dilihat dalam kod berikut:

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

Dengan mengisih satu senarai berdasarkan susunan yang lain, kami boleh memastikan bahawa elemen dalam senarai yang diisih mengekalkan susunan relatif yang sama seperti elemen dalam senarai tersusun. Ini ialah teknik berkuasa yang boleh digunakan untuk pelbagai aplikasi dalam pengaturcaraan Java.

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

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!