Dalam bahasa Go, tatasusunan ialah jenis data asas Pelaksanaan asasnya ialah kawasan memori berterusan panjang tetap Tatasusunan ditakrifkan seperti berikut:
var arr [5]int // 定义一个长度为5的int类型的数组arr
Dalam pembangunan sebenar, kami kadangkala Anda perlu menukar. tatasusunan ke dalam parameter pembolehubah, iaitu, hantar setiap elemen dalam tatasusunan kepada fungsi. Dalam artikel ini, kita akan belajar cara menukar tatasusunan kepada hujah variadic.
Dalam bahasa Go, anda boleh menggunakan operator ...
untuk menukar tatasusunan kepada parameter pembolehubah Contohnya adalah seperti berikut:
Hasil keluaran ialah:
package main import "fmt" func test(args ...int) { fmt.Println(args) } func main() { arr := [5]int{1, 2, 3, 4, 5} test(arr[:]...) // 将数组arr转换为变参 }
Dalam kod di atas, kami menukar tatasusunan arr
menjadi parameter berubah dengan menghiris [:]
dan menyerahkannya kepada fungsi test
. Dalam fungsi test
, kita boleh mendapatkan setiap elemen dalam tatasusunan dengan merentasi parameter pembolehubah. Perlu diingat bahawa apabila menggunakan operator ...
untuk menukar tatasusunan kepada parameter berubah, perkara berikut perlu diambil perhatian:
...
mestilah selepas tatasusunan dan terus selepas [:]
. ...
. Dalam pembangunan sebenar, senario aplikasi untuk menukar tatasusunan kepada parameter pembolehubah adalah sangat luas di bawah ini.
Apabila memanggil fungsi, kita boleh meneruskan tatasusunan sebagai parameter fungsi kepada parameter pembolehubah. Contohnya:
[1 2 3 4 5]
Dalam kod di atas, kami mentakrifkan fungsi sum
yang menerima sebarang bilangan pembolehubah integer dan menambahkannya bersama-sama. Dalam fungsi main
, kami mentakrifkan tatasusunan arr
dengan panjang 5, menukarnya menjadi parameter berubah dan menyerahkannya kepada fungsi sum
. Dalam fungsi, setiap elemen dalam tatasusunan diperoleh dengan merentasi parameter pembolehubah, dan ia terkumpul dan dijumlahkan.
Kadangkala, kita perlu menyalin semua atau sebahagian daripada elemen dalam satu tatasusunan ke tatasusunan yang lain Parameter pembolehubah, dan kemudian gunakan fungsi append
untuk menambah elemen parameter pembolehubah pada tatasusunan baharu. Contohnya:
package main import "fmt" func sum(nums ...int) { total := 0 for _, num := range nums { total += num } fmt.Println(total) } func main() { arr := [5]int{1, 2, 3, 4, 5} sum(arr[:]...) }
Dalam kod di atas, kami mentakrifkan dua tatasusunan arr1
dan arr2
, dan selepas menukar tatasusunan arr1
kepada parameter boleh ubah, gunakan fungsi append
untuk menukar elemen dalam parameter pembolehubah Tambahkan pada penghujung tatasusunan arr2
. Perlu diingat bahawa apabila menggunakan fungsi append
untuk menambah kepingan atau tatasusunan, anda perlu menggunakan operator ...
di hujung kepingan atau tatasusunan untuk mengembangkan parameter pembolehubah.
Melalui kajian artikel ini, kami telah mempelajari cara menukar tatasusunan kepada parameter berubah dan memperkenalkan dua senario aplikasi biasa untuk menukar tatasusunan kepada parameter berubah dalam pembangunan sebenar. Perlu diingat bahawa apabila menggunakan operator ...
untuk menukar tatasusunan menjadi parameter berubah, anda perlu memberi perhatian kepada peraturan tatabahasa dan butiran untuk mengelakkan ralat.
Atas ialah kandungan terperinci parameter penukaran tatasusunan golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!