Rumah > pembangunan bahagian belakang > Golang > Bagaimana Ekspresi Lambda Berfungsi dalam Go?

Bagaimana Ekspresi Lambda Berfungsi dalam Go?

Mary-Kate Olsen
Lepaskan: 2024-12-27 10:21:16
asal
540 orang telah melayarinya

How Do Lambda Expressions Work in Go?

Ungkapan Lambda dalam Go

Dalam Go, ungkapan lambda dilaksanakan menggunakan fungsi tanpa nama. Ini membolehkan anda mentakrifkan fungsi sebaris, tanpa perlu mengisytiharkannya secara berasingan.

Membuat ungkapan lambda dalam Go adalah mudah. Hanya gunakan kata kunci func diikuti dengan parameter dan badan fungsi. Sebagai contoh, kod berikut mentakrifkan ungkapan lambda yang mengembalikan rentetan:

func foo() string {
  return "Stringy function"
}
Salin selepas log masuk

Ekspresi Lambda boleh digunakan di mana-mana sahaja anda akan menggunakan fungsi biasa. Sebagai contoh, anda boleh menghantarnya sebagai argumen kepada fungsi lain atau menyimpannya dalam pembolehubah.

Contoh berikut menunjukkan cara menggunakan ungkapan lambda untuk menghantar fungsi sebagai argumen kepada fungsi lain:

func takesAFunction(foo func() string) {
  fmt.Printf("takesAFunction: %v\n", foo())
}
Salin selepas log masuk

Anda juga boleh menggunakan ungkapan lambda untuk menentukan fungsi yang dikembalikan daripada fungsi lain. Contoh berikut mengembalikan ungkapan lambda yang mencetak rentetan:

func returnsAFunction() Stringy {
  return func() string {
    fmt.Printf("Inner stringy function\n")
    return "bar" // have to return a string to be stringy
  }
}
Salin selepas log masuk

Seperti yang anda lihat, ungkapan lambda dalam Go ialah alat berkuasa yang boleh digunakan untuk mencipta kod ringkas dan boleh digunakan semula.

Atas ialah kandungan terperinci Bagaimana Ekspresi Lambda Berfungsi dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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 terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan