Saya mencoba memilah-milah daftar larik objek dengan nilai tertentu di dalam objek. Pendekatan apa yang terbaik untuk melakukan hal seperti itu. Haruskah saya menggunakan Collections.sort () dengan semacam pembanding?
Saya mencoba mengurutkan daftar objek dengan nilai float yang mereka pegang di salah satu variabel.
EDIT: Inilah yang saya miliki sejauh ini:
public class CustomComparator implements Comparator<Marker> {
@Override
public int compare(Mark o1, Mark o2) {
return o1.getDistance().compareTo(o2.getDistance());
}
}
status kesalahan: Tidak dapat memanggil bandingkanTo (double) pada tipe primitif ganda.
Apakah karena pembanding tidak bisa mengembalikan apapun selain tipe tertentu?
java
android
sorting
collections
comparator
James andresakis
sumber
sumber
Jawaban:
Anda harus menggunakan Comparable dan bukan Comparator jika pengurutan default adalah yang Anda cari.
Lihat di sini, ini mungkin bisa membantu - Kapan kelas harus Sebanding dan / atau Pembanding?
Coba ini -
sumber
Ikuti kode ini untuk mengurutkan ArrayList apa pun
sumber
Saya pikir ini akan membantu Anda lebih baik
sumber
Sekarang tidak perlu Tinju (yaitu tidak perlu Membuat
OBJECT
menggunakan operator baru, gunakan valueOf insted with CompareTo of Collections.Sort ..)1) Untuk urutan naik
1) Untuk pesanan Menurun
sumber
"Android-java" di sini sama sekali tidak berbeda dari "java normal", jadi ya
Collections.sort()
akan menjadi pendekatan yang baik.sumber
Cara Penggunaan:
sumber
Anda dapat membandingkan dua String dengan menggunakan ini.
Dan Sekarang buat Kelas ContactData.
Berikut contactsList:
sumber
Baik make a
Comparator
yang dapat membandingkan objek Anda, atau jika semuanya adalah instance dari kelas yang sama, Anda dapat membuat kelas tersebut diimplementasikanComparable
. Anda kemudian dapat menggunakan Collections.sort () untuk melakukan penyortiran sebenarnya.sumber
compareTo()
adalah tempat Anda melakukan perbandingan. Sedikit googling memberikan beberapa contoh mendetail tentang cara menggunakannya, berikut ini salah satunya: javadeveloper.co.in/java-example/java-comparable-example.htmlKelas Model:
Sekarang atur data di ArrayList
Sekarang Sortir ArrayList
Ringkasan: Ini akan mengurutkan data Anda juga
sumber
Untuk Kotlin , Anda dapat menggunakan fungsi ini
dan sebut saja di Anda
activity
ataufragment
olehsumber
Saya memiliki listview yang menunjukkan Informasi tentang semua klien. Saya mengurutkan nama klien menggunakan kelas pembanding kustom ini. Mereka memiliki beberapa rahasia ekstra selain huruf Inggris yang saya kelola dengan setStrength (Collator.SECONDARY)
sumber
Sangat mudah untuk Kotlin!
listToBeSorted.sortBy { it.distance }
sumber