Mengisih Koleksi Java
Untuk mengisih Koleksi Java, terdapat beberapa pendekatan yang perlu dipertimbangkan, bergantung pada keperluan khusus. Satu pilihan biasa ialah menggunakan Comparator.
Menggunakan Comparator:
Buat kelas Comparator yang melaksanakan antara muka Comparator. Dalam kaedah compare(), anda mentakrifkan logik untuk membandingkan objek. Contohnya, untuk mengisih CustomObject mengikut medan idnya:
Comparator<CustomObject> comparator = new Comparator<CustomObject>() { @Override public int compare(CustomObject left, CustomObject right) { return left.getId() - right.getId(); } };
Kemudian, gunakan Comparator untuk mengisih koleksi menggunakan Collections.sort():
Collections.sort(list, comparator);
Sebagai alternatif, jika anda CustomObject mengimplementasikan Comparable, anda boleh terus menggunakan Collections.sort(list).
Dengan Ungkapan Lambda JDK 8:
Diperkenalkan dalam JDK 8, ungkapan lambda menyediakan cara yang mudah untuk menulis Pembanding:
Collections.sort(list, (left, right) -> left.getId() - right.getId());
Notasi Ringkas dengan JDK 8:
Untuk senario mudah, tatatanda trengkas berikut boleh digunakan untuk mengisih mengikut medan tertentu:
list.sort(Comparator.comparing(CustomObject::getId));
Akhirnya, pendekatan terbaik untuk mengisih Koleksi Java bergantung pada keperluan khusus dan versi Java yang digunakan.
Atas ialah kandungan terperinci Bagaimana Mengisih Koleksi Java: Perbandingan, Sebanding dan Ungkapan Lambda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!