Rumah  >  Artikel  >  Java  >  Bagaimana untuk memudahkan pengaturcaraan berfungsi menggunakan ungkapan Lambda dalam Java?

Bagaimana untuk memudahkan pengaturcaraan berfungsi menggunakan ungkapan Lambda dalam Java?

王林
王林asal
2023-08-03 23:21:271591semak imbas

Bagaimana untuk memudahkan pengaturcaraan berfungsi menggunakan ungkapan Lambda dalam Java?

Dalam versi Java yang lalu, pengaturcaraan berfungsi adalah tugas yang agak membosankan. Walau bagaimanapun, sejak versi Java 8 memperkenalkan ungkapan Lambda, pengaturcaraan berfungsi menjadi lebih mudah dan lebih mudah di Java. Ungkapan Lambda membolehkan kami menulis fungsi tanpa nama dengan cara yang lebih ringkas, sekali gus mengurangkan kerumitan kod. Artikel ini akan memperkenalkan cara menggunakan ungkapan lambda untuk memudahkan pengaturcaraan berfungsi dan menggambarkannya dengan contoh kod.

  1. Sintaks asas ungkapan Lambda
    Sintaks asas ungkapan Lambda adalah seperti berikut:

(parameter1, parameter2, ..., parameterN) -> {

// 函数体
// 可以是一条简单的表达式
// 或者是一系列语句块

}

, senarai parameter

parameter2 , ..., parameterN) adalah pilihan Jika terdapat parameter, ia perlu disertakan dalam kurungan. Anak panah -> digunakan untuk memisahkan parameter dan badan fungsi, dan bahagian kiri anak panah ialah senarai parameter dan bahagian kanan ialah badan fungsi. Badan fungsi boleh menjadi ungkapan ringkas atau satu siri blok pernyataan.

  1. Gunakan ungkapan Lambda untuk memudahkan antara muka berfungsi
    Antara muka berfungsi merujuk kepada antara muka yang mengandungi hanya satu kaedah abstrak. Antara muka fungsi ialah asas ungkapan Lambda hanya boleh digunakan dalam antara muka berfungsi. Java telah menentukan beberapa antara muka fungsi biasa, seperti Pengguna, Pembekal, Fungsi, dll.

Ambil antara muka fungsi Pengguna sebagai contoh Antara muka Pengguna hanya menerima satu kaedah abstrak, yang menerima parameter dan mengembalikan tidak sah. Sebelum Java 8, kami perlu melaksanakan antara muka Pengguna dengan mencipta kelas dalaman tanpa nama, contohnya:

Listc0f559cc8d56b43654fcbe4aa9df7b4a nombor = Arrays.asList(1, 2, 3, 4, 5);
numbers.forEach(new Penggunaf4107a24d4c801a519e9466566f4d9d2() {

@Override
public void accept(Integer number) {
    System.out.println(number);
}

});

Menggunakan ungkapan Lambda, kita boleh memudahkan kod di atas kepada:

Senaraikanc0f559cc8d56b43654fcbe4aa9df7b4a
numbers.forEach(number -> System.out.println(number));

Dengan ungkapan Lambda, kita boleh terus menghantar fungsi sebagai parameter kepada kaedah forEach tanpa mentakrifkan kelas dalaman tanpa nama secara eksplisit.

  1. Pengaturcaraan Fungsian dengan Ungkapan Lambda
    Ekspresi Lambda amat berguna dalam pengaturcaraan berfungsi. Dalam pengaturcaraan berfungsi, kita sering menggunakan fungsi peringkat tinggi, iaitu fungsi yang menerima atau mengembalikan fungsi.

Berikut ialah contoh kod untuk pengaturcaraan berfungsi menggunakan ungkapan Lambda:

int[] nombor = {1, 2, 3, 4, 5}; kod di atas, kami menggunakan ungkapan Lambda sebagai parameter untuk dihantar ke kaedah pengurangan. Ungkapan Lambda (a, b) -> a + b melaksanakan operasi binari dan mengira hasil tambah dua nombor. Kaedah pengurangan mengumpul dan menjumlahkan elemen dalam tatasusunan, dengan nilai awal ialah 0.

Rujukan Kaedah untuk Ungkapan Lambda

Selain ungkapan Lambda, kami juga boleh menggunakan rujukan kaedah untuk memudahkan pengaturcaraan berfungsi. Rujukan kaedah membolehkan kami merujuk secara langsung kaedah atau pembina sedia ada dan bukannya mentakrifkan semula ungkapan Lambda.

  1. Berikut ialah contoh kod menggunakan rujukan kaedah:
Listf7e83be87db5cd2d9a8a0b8117b38cd4 strings = Arrays.asList("Hello", "Lambda", "Expression");

strings.forEach(System.out::println) ;

Dalam kod di atas, kami melaksanakan traversal dan output senarai rentetan dengan merujuk kaedah println System.out.

Ringkasan:

Pengenalan ungkapan Lambda sangat memudahkan pelaksanaan pengaturcaraan berfungsi dalam Java. Kita boleh menggunakan ungkapan Lambda untuk memudahkan takrifan kelas dalaman tanpa nama, dengan itu mengurangkan jumlah kod dan kerumitan. Ungkapan Lambda juga membolehkan kami menggunakan fungsi tertib tinggi dan rujukan kaedah untuk mencapai gaya pengaturcaraan yang lebih ringkas dan fleksibel. Dengan mempelajari dan menggunakan ungkapan Lambda, kami boleh melaksanakan pengaturcaraan berfungsi dalam Java dengan lebih mudah.

Kod rujukan adalah seperti berikut:

            .reduce(0, (a, b) -> a + b);

Saya berharap pengenalan dan contoh kod artikel ini dapat membantu pembaca lebih memahami dan menggunakan ungkapan Lambda dalam Java, dengan itu memudahkan pelaksanaan pengaturcaraan berfungsi.

Atas ialah kandungan terperinci Bagaimana untuk memudahkan pengaturcaraan berfungsi menggunakan ungkapan Lambda dalam Java?. 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