Rumah  >  Artikel  >  Java  >  Item Lebih suka rujukan kepada kaedah berbanding lambdas

Item Lebih suka rujukan kepada kaedah berbanding lambdas

王林
王林asal
2024-07-19 14:02:39700semak imbas

Kelebihan Rujukan untuk Kaedah

  • Ketepatan: Rujukan kepada kaedah adalah lebih ringkas daripada lambda.
    Contoh: Nilai kenaikan dalam Peta menggunakan cantuman:

  • Lambda: (kiraan, incr) -> kiraan + incr
    Rujukan untuk kaedah: Integer::sum

Pengurangan Boilerplate
Pengalihan Keluar Parameter Tidak Berguna: Parameter seperti kiraan dan incr dihapuskan.
Contoh:

map.merge(key, 1, Integer::sum);

Penggunaan Rujukan yang Cekap untuk Kaedah

  • Dokumentasi Berguna dalam Lambdas: Dalam sesetengah kes, nama parameter dalam lambdas boleh memberikan dokumentasi yang berguna.
  • Penukaran Lambdas kepada Kaedah: Jika lambda terlalu kompleks, ekstrak kod kepada kaedah yang berasingan dan gunakan rujukan kepada kaedah itu.

IDE dan Rujukan untuk Kaedah

  • Cadangan IDE: IDE sering mencadangkan menggantikan lambda dengan rujukan kepada kaedah.
  • Penerimaan Cadangan: Secara umumnya, terima cadangan, tetapi nilai mengikut kes demi kes.

Pengecualian dan Pertimbangan

  • Lambda yang Lebih Ringkas: Kadangkala lambda lebih ringkas daripada rujukan kaedah.
  • Contoh dengan Kelas:
  • Rujukan untuk kaedah: GoshThisClassNameIsHumongous::action
  • Lambda: () -> tindakan()
  • Fungsi Identiti: Function.identity() lwn. x -> x

Jenis Rujukan untuk Kaedah

  • Statik: Integer::parseInt (lambda: str -> Integer.parseInt(str))
  • Terhad: Instant.now()::isAfter (lambda: t -> Instant.now().isAfter(t))
  • Tidak terhad: Rentetan::toLowerCase (lambda: str -> str.toLowerCase())
  • Pembina Kelas: Peta Pokok::baharu (lambda: () -> Peta Pokok baharu)
  • Pembina Tatasusunan: int[]::baharu (lambda: len -> int baharu[len])

Kesimpulan
Keutamaan untuk Rujukan Kaedah: Gunakan rujukan kaedah apabila ia lebih pendek dan lebih jelas daripada lambda.
Penggunaan Lambdas: Lebih suka lambda jika ia lebih ringkas atau menyediakan dokumentasi yang lebih baik.

Item  Dê preferência às referências para métodos em vez dos lambdas

Atas ialah kandungan terperinci Item Lebih suka rujukan kepada kaedah berbanding lambdas. 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
Artikel sebelumnya:Refleksi pada item dan bukuArtikel seterusnya:Refleksi pada item dan buku