Dalam program ini, anda akan belajar menyusun susunan daftar objek kustom berdasarkan harta benda mereka di Java.
Untuk memahami contoh ini, anda harus mempunyai pengetahuan mengenai topik pengaturcaraan Java berikut:
- Kelas dan Objek Java
- Kelas ArrayList Java
Contoh: Susun ArraySenarai Objek Tersuai Mengikut Harta
import java.util.*; public class CustomObject ( private String customProperty; public CustomObject(String property) ( this.customProperty = property; ) public String getCustomProperty() ( return this.customProperty; ) public static void main(String() args) ( ArrayList list = new ArrayList(); list.add(new CustomObject("Z")); list.add(new CustomObject("A")); list.add(new CustomObject("B")); list.add(new CustomObject("X")); list.add(new CustomObject("Aa")); list.sort((o1, o2) -> o1.getCustomProperty().compareTo(o2.getCustomProperty())); for (CustomObject obj : list) ( System.out.println(obj.getCustomProperty()); ) ) )
Pengeluaran
A Aa BXZ
Dalam program di atas, kami telah menentukan CustomObject
kelas dengan String
harta tanah, customProperty.
Kami juga telah menambahkan konstruktor yang menginisialisasi harta tanah, dan fungsi mendapatkan getCustomProperty()
yang mengembalikan customProperty.
Dalam main()
kaedah ini, kami telah membuat senarai senarai objek objek khusus, yang dimulakan dengan 5 objek.
Untuk menyusun senarai dengan harta yang diberikan, kami menggunakan sort()
kaedah senarai . The sort()
Cara mengambil senarai yang hendak disusun (senarai yang disusun akhir juga yang sama) dan comparator
.
Dalam kes kami, pembanding adalah lambda yang
- mengambil dua objek dari senarai o1 dan o2,
- membandingkan
compareTo()
kaedah customProperty dua objek menggunakan kaedah, - dan akhirnya mengembalikan nombor positif jika sifat o1 lebih besar daripada o2, negatif jika sifat o1 lebih rendah daripada o2, dan sifar jika sama.
Berdasarkan ini, senarai disusun berdasarkan sekurang-kurangnya harta benda terbesar dan disimpan kembali ke senarai.