Apakah komparator Java Util antarmuka fungsional?
Apakah komparator Java Util antarmuka fungsional?

Video: Apakah komparator Java Util antarmuka fungsional?

Video: Apakah komparator Java Util antarmuka fungsional?
Video: Comparable Vs Comparator in Java 2024, Maret
Anonim

Pengantar. NS antarmuka komparator telah mengalami perombakan besar-besaran di Java8 dengan tetap mempertahankan esensinya yaitu membandingkan dan mengurutkan objek dalam koleksi. pembanding sekarang mendukung deklarasi melalui ekspresi lambda sebagaimana adanya Antarmuka Fungsional . Berikut adalah kode sumber sederhana untuk Jawa.

Mengenai ini, apakah komparator merupakan antarmuka fungsional?

Semua objek di Java sudah memiliki implementasi metode equals(), karena mereka mewarisinya dari kelas Object. Jadi, pembanding adalah antarmuka fungsional karena hanya ada satu metode abstrak yang belum diterapkan: bandingkan(T o1, T o2).

Orang mungkin juga bertanya, apa yang dilakukan oleh komparator Java? Pembanding Jawa adalah antarmuka untuk menyortir Jawa objek. Dipanggil oleh “ Jawa . pembanding ,” Pembanding Jawa membandingkan dua Jawa objek dalam format "bandingkan (Objek 01, Objek 02)". Menggunakan metode yang dapat dikonfigurasi, Pembanding Jawa dapat membandingkan objek untuk mengembalikan bilangan bulat berdasarkan perbandingan positif, sama atau negatif.

Selain itu, apa gunanya antarmuka fungsional di Jawa?

A antarmuka fungsional adalah antarmuka yang hanya berisi satu metode abstrak. Mereka hanya dapat memiliki satu fungsi untuk dipamerkan. Dari Jawa 8 dan seterusnya, ekspresi lambda dapat digunakan untuk mewakili instance dari a antarmuka fungsional . Runnable, ActionListener, Comparable adalah beberapa contoh dari fungsional antarmuka.

Apakah Lambda hanya untuk antarmuka fungsional?

Ya, lambda ekspresi dapat digunakan hanya untuk mengimplementasikan metode abstrak dalam a antarmuka fungsional . Java adalah bahasa berorientasi objek, sedangkan lambda ekspresi adalah fungsional fitur. Untuk menambahkan lambda dukungan ekspresi ke Java, Java 8 memutuskan untuk memperkenalkan antarmuka fungsional.

Direkomendasikan: