Rumah  >  Artikel  >  Java  >  Apakah Operator Anak Panah (->) dalam Java dan Bagaimana Ia Berfungsi dengan Ungkapan Lambda?

Apakah Operator Anak Panah (->) dalam Java dan Bagaimana Ia Berfungsi dengan Ungkapan Lambda?

Susan Sarandon
Susan Sarandonasal
2024-11-23 08:36:31949semak imbas

What is the Arrow Operator (->) dalam Java dan Bagaimana Ia Berfungsi dengan Ungkapan Lambda?
) dalam Java dan Bagaimana Ia Berfungsi dengan Ungkapan Lambda? " />

Memahami Operator Anak Panah dalam Java

Semasa meneroka kod, anda mungkin menemui pengendali anak panah yang penuh teka-teki (->). Bertentangan dengan kepercayaan popular, Java sememangnya menyokong pengendali ini sebagai bahagian penting dalam ungkapan lambdanya, yang diperkenalkan di Jawa 8.

Membuka Lambdas

Lambdas menyediakan cara ringkas untuk mewakili antara muka berfungsi, yang merangkumi satu kaedah Pengendali anak panah memisahkan parameter daripada pelaksanaan kaedah ini . Dalam istilah yang lebih mudah, ia bertindak sebagai pembahagi antara input dan output/operasi.

Sintaks Lambdas

Sintaks umum untuk ungkapan lambda dalam Java ialah:

(Parameters) -> { Body }

Contoh dengan Koleksi Penapisan

Pertimbangkan coretan kod berikut, yang menggunakan kaedah CollectionUtils.select Koleksi Apache Commons dan ungkapan lambda untuk penapisan:

return (Collection<Car>) CollectionUtils.select(listOfCars, (arg0) -> {
    return Car.SEDAN == ((Car)arg0).getStyle();
});

Dalam contoh ini:

  • (arg0) mewakili parameter input, iaitu objek kereta .
  • -> memisahkan input daripada pelaksanaan.
  • Ungkapan dalam pendakap menilai benar jika gaya kereta ialah Sedan.

Kod Bukan Lambda Setara

Kod yang setara tanpa lambda akan be:

return (Collection<Car>) CollectionUtils.select(listOfCars, new Predicate() {
    public boolean evaluate(Object arg0) {
        return Car.SEDAN == ((Car)arg0).getStyle();
    }
});

Kesimpulan

Memahami pengendali anak panah dan lambda di Java adalah penting untuk memanfaatkan kuasa pengaturcaraan berfungsi. Mekanisme ini membolehkan kod ringkas dan ekspresif, meningkatkan kebolehbacaan kod, fleksibiliti dan kebolehselenggaraan.

Atas ialah kandungan terperinci Apakah Operator Anak Panah (->) dalam Java dan Bagaimana Ia Berfungsi dengan Ungkapan Lambda?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn