Dalam fungsi Golang, parameter boleh dihantar menggunakan parameter tidak tentu. Parameter tak tentu merujuk kepada menggunakan jenis khas untuk menerima semua parameter apabila bilangan parameter tidak pasti. Dalam fungsi, anda boleh menggunakan ...type untuk mentakrifkan parameter tidak tentu, dengan jenis ialah sebarang jenis data, seperti int, rentetan, dsb.
Berikut ialah contoh asas yang menggunakan parameter tak tentu untuk mengira jumlah set nombor:
func sum(nums ...int) int { total := 0 for _, num := range nums { total += num } return total } func main() { fmt.Println(sum(1, 2, 3, 4, 5)) // 输出 15 }
Dalam contoh di atas, fungsi jumlah menerima nombor parameter tak tentu jenis int , gunakan gelung for untuk mengulangi semua parameter dan mengumpul nilainya. Dalam fungsi utama, kami lulus 5 parameter jenis int apabila memanggil fungsi jumlah dan mengeluarkan jumlahnya.
Kelebihan menggunakan parameter tak tentu ialah anda boleh melepasi sebarang bilangan parameter dengan mudah tanpa perlu mengisytiharkan nombornya terlebih dahulu. Ia sesuai untuk fungsi yang perlu mengendalikan bilangan parameter dinamik, seperti log pemprosesan, laluan fail, URL, dsb.
Selain menerima bilangan parameter yang tidak tentu jenis yang sama, parameter tidak tentu juga boleh menerima parameter jenis yang berbeza. Berikut ialah contoh yang menggunakan bilangan parameter yang tidak ditentukan untuk mengeluarkan bilangan nilai yang sewenang-wenangnya dan jenisnya:
func display(values ...interface{}) { for _, value := range values { fmt.Printf("%v (%T) ", value, value) } } func main() { display(1, "hello", true) }
Dalam contoh di atas, fungsi paparan menerima bilangan nilai parameter yang tidak tentu jenis antara muka{}, menggunakan untuk Loop melalui semua parameter dan mencetak nilai dan jenisnya menggunakan fungsi Printf. Dalam fungsi utama, apabila kita memanggil fungsi paparan, kita lulus nilai jenis int 1, nilai jenis rentetan "hello" dan nilai jenis bool benar, dan mengeluarkan nilai dan jenisnya.
Perlu diingat bahawa apabila menggunakan parameter tak tentu, ia mestilah parameter terakhir dalam senarai parameter fungsi. Kerana argumen mesti dihantar dalam susunan deterministik apabila fungsi dipanggil, argumen pembolehubah mesti berada di penghujung senarai argumen supaya argumen lain sudah menjadi deterministik.
Ringkasnya, menggunakan parameter tidak tentu ialah cara yang sangat mudah untuk mengendalikan bilangan parameter yang dinamik, membolehkan kami menulis fungsi fleksibel dengan lebih mudah. Dalam Golang, parameter tak tentu sangat mudah digunakan Anda hanya perlu menggunakan ...taip semasa mentakrifkan fungsi.
Atas ialah kandungan terperinci parameter tak tentu fungsi golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!