Cara Mengurutkan (Sorting) List dengan Comparator di Program Java
Comparator adalah salah satu interface , di class library java (java.util), yang mendefinisikan method .compare() secara default ,yang fungsinya digunakan untuk implementasi pengurutan data ,dari perbandingan dua argument , untuk setiap objek dari class yang didefinisikan oleh user.
Comparator dapat digunakan , untuk method pengurutan seperti Collections.sort() , dan Arrays.sort(). Pada artikel sebelumnya ,tentang Belajar Mengurutkan (Sorting) List pada Program Java , dimana kita menggunakan method dari Collections.sort() ,untuk mengurutkan data ,yang didefinisikan menggunakan ArrayList.
Comparator dapat digunakan , untuk method pengurutan seperti Collections.sort() , dan Arrays.sort(). Pada artikel sebelumnya ,tentang Belajar Mengurutkan (Sorting) List pada Program Java , dimana kita menggunakan method dari Collections.sort() ,untuk mengurutkan data ,yang didefinisikan menggunakan ArrayList.
Bedanya pada artikel belajar java kali ini , kita tidak hanya menggunakan method tersebut , tapi kita juga mengkustomisasi class untuk urutan penyortiran data ,menggunakan interface Comparator. Selengkapnya ,berikut mari kita simak lebih lanjut :
1. Pertama buka IntelliJ IDEA ,atau Software IDE lain yang kalian gunakan , di Komputer atau Laptop kalian.
2. Kalian bisa perhatikan Contoh code ,beserta penjelasanya di bawah:
Contoh Code:
Penjelasan :
Pada contoh code program di atas ,pertama-tama kita membuat custom class ,yang bernama KebalikanAlfabetComparator , yang memgimplementasi interface Comparator dengan tipe data String.
Selanjutnya , kita mendefinisikan method .compare() , yang fungsinya untuk membalikan urutan huruf abjad alfabet. Lalu di dalam methodnya , kita menggunakan method .compareTo(), dari class String , untuk membandingkan kedua nilai , berdasarkan ilmu lexicografi ,yang sudah di jelaskan pada artikel sebelumnya.
Setelah itu pada class Aplikasi ,disini kita akan mencoba menjalankan programnya.
Pada baris awal , kita menginstansi objek namaBuah , dari class ArrayList.
Dengan method .add() ,kita menambahkan data atau nilainya , untuk nama-nama buah.
Lalu ,dengan method Collection.sort() , kita passing nilai argumentnya ,dengan objek namaBuah , serta objek dari class KebalikanAlfabetComparator .
Selanjutnya ,kita tampilkan output hasilnya ,dengan looping for each.
Pada baris code di bawahnya ,kita mencoba menginisialisasi nilai pada array yaitu names.
Lalu kita urutkan dengan method Arrays.sort() , serta passing nilai argumentnya , dengan names , dan objek dari class KebalikanAlfabetComparator
Selanjutnya ,kita juga tampilkan output hasilnya ,dengan looping for each.
Output :
Contoh Code |
Penjelasan :
Pada contoh code program di atas ,pertama-tama kita membuat custom class ,yang bernama KebalikanAlfabetComparator , yang memgimplementasi interface Comparator dengan tipe data String.
Selanjutnya , kita mendefinisikan method .compare() , yang fungsinya untuk membalikan urutan huruf abjad alfabet. Lalu di dalam methodnya , kita menggunakan method .compareTo(), dari class String , untuk membandingkan kedua nilai , berdasarkan ilmu lexicografi ,yang sudah di jelaskan pada artikel sebelumnya.
Setelah itu pada class Aplikasi ,disini kita akan mencoba menjalankan programnya.
Pada baris awal , kita menginstansi objek namaBuah , dari class ArrayList.
Dengan method .add() ,kita menambahkan data atau nilainya , untuk nama-nama buah.
Lalu ,dengan method Collection.sort() , kita passing nilai argumentnya ,dengan objek namaBuah , serta objek dari class KebalikanAlfabetComparator .
Selanjutnya ,kita tampilkan output hasilnya ,dengan looping for each.
Pada baris code di bawahnya ,kita mencoba menginisialisasi nilai pada array yaitu names.
Lalu kita urutkan dengan method Arrays.sort() , serta passing nilai argumentnya , dengan names , dan objek dari class KebalikanAlfabetComparator
Selanjutnya ,kita juga tampilkan output hasilnya ,dengan looping for each.
Output :
Mengurutkan Angka Terakhir :
Contoh Code :
Contoh Code |
Contoh Code |
Penjelasan :
Pada contoh code program di atas ,kita akan mencoba mengurutkan 1 digit atau angka terakhir , menggunakan tipe data integer.
Pertama kita membuat custom class UrutkanAngkaTerakhir ,yang mengimplementasi interface Comparator , secara terpisah dari class utama(Aplikasi).
Di dalamnya ,kita mendefinisikan method .compare() ,yang didalamnya ,kita menggunakan conditional if , untuk perbandingan dalam mengurutkan angka terakhir.
Selanjutnya seperti biasa kita menginstansi objek list , dari class ArrayList , tipe data integer.
Lalu kita tambahkan data atau nilainya ,dengan method .add().
Disini kita juga menginstansi objek comparator ,dari class UrutanAngkaTerakhir.
Dimana selanjutnya ,kita menggunakan objek list dan comparator , untuk memberikan nilai argument pada method Collections.sort().
Setelah itu ,kita coba tampilkan output hasilnya.
Output :
Output Hasil |
Baca juga : Cara Mengurutkan (Sorting) List dengan Comparable di Program Java
Post a Comment for "Cara Mengurutkan (Sorting) List dengan Comparator di Program Java"
Silakan berkomentar dengan baik ,jangan SPAM di komentar ini . NO BACKLINK /LINK HIDUP