Golang ialah bahasa pengaturcaraan yang berkuasa dengan sintaks yang ringkas dan mudah difahami, kelajuan larian yang cekap dan perpustakaan standard yang kaya. Di Golang, tatasusunan ialah jenis data biasa yang membolehkan kita menyimpan berbilang nilai daripada jenis yang sama dalam satu pembolehubah. Walaupun saiz tatasusunan perlu ditentukan apabila ia diisytiharkan, kita boleh menambah elemen pada tatasusunan melalui beberapa helah.
Takrifan asas tatasusunan dalam Golang adalah seperti berikut:
var arrayName [size]dataType
Antaranya, arrayName mewakili nama tatasusunan, saiz mewakili bilangan elemen dalam tatasusunan dan dataType mewakili data jenis elemen tatasusunan. Contohnya, untuk menentukan tatasusunan dengan panjang 5 dan menyimpan elemen jenis integer, anda boleh menggunakan kod berikut:
var intArray [5]int
Seterusnya, kami akan memperkenalkan beberapa kaedah menambah elemen pada tatasusunan Golang.
Di Golang, kita boleh menggunakan fungsi append
untuk menambah elemen secara dinamik pada tatasusunan. append
Fungsi ini akan mengembalikan kepingan baharu yang panjangnya akan ditingkatkan secara automatik mengikut keperluan. Berikut ialah kod sampel yang menggunakan fungsi append
untuk menambah elemen pada tatasusunan:
package main import "fmt" func main() { a := []int{1, 2, 3, 4, 5} a = append(a, 6) fmt.Println(a) // [1 2 3 4 5 6] }
Dalam kod sampel di atas, kami menggunakan tatasusunan a
panjang 5. Kemudian, kami memanggil fungsi append
untuk menambah 6 sebagai elemen baharu pada a
. Ambil perhatian bahawa parameter pertama fungsi append
mestilah kepingan, bukan tatasusunan.
Slices ialah jenis data yang sangat berkuasa di Golang, yang boleh menambah, memadam dan mengubah suai tatasusunan dengan mudah. Kita boleh menukar tatasusunan menjadi kepingan dan kemudian menggunakan operasi hirisan untuk menambah elemen padanya. Berikut ialah kod sampel yang menggunakan kepingan untuk menambah elemen tatasusunan:
package main import "fmt" func main() { a := [5]int{1, 2, 3, 4, 5} b := a[:] // 将数组a转换成切片b b = append(b, 6) fmt.Println(b) // [1 2 3 4 5 6] }
Dalam kod sampel di atas, kita mula-mula menukar tatasusunan a
menjadi kepingan b
, dan kemudian gunakan fungsi append
ke b
Tambah elemen baharu 6.
Fungsi copy
dalam Golang boleh menyalin elemen satu tatasusunan atau hirisan ke tatasusunan atau kepingan lain. Kita boleh menggunakan fungsi copy
untuk menyalin semua elemen dalam tatasusunan kepada tatasusunan baharu yang lebih besar untuk meningkatkan saiz tatasusunan. Berikut ialah contoh kod yang menggunakan fungsi copy
untuk menyalin tatasusunan ke dalam tatasusunan yang lebih besar, sekali gus meningkatkan saiz tatasusunan:
package main import "fmt" func main() { a := [5]int{1, 2, 3, 4, 5} b := [10]int{} // 定义长度为10的新数组b copy(b[:], a[:]) // 将a中的元素复制到b中 fmt.Println(b) // [1 2 3 4 5 0 0 0 0 0] }
Dalam kod sampel di atas, kami mula-mula menentukan tatasusunan panjang 5 a
, dan kemudian buat tatasusunan b
panjang 10. Seterusnya, kami menggunakan fungsi copy
untuk menyalin elemen dalam a
ke b
. Memandangkan b
lebih besar daripada a
, selepas operasi salin selesai, semua elemen dalam b
kecuali elemen dalam a
akan ditetapkan kepada sifar.
Ringkasnya, terdapat tiga cara utama untuk menambah elemen pada tatasusunan Golang: menggunakan fungsi append
, menggunakan menghiris dan menggunakan fungsi copy
. Kaedah ini boleh meningkatkan saiz tatasusunan dengan berkesan untuk memenuhi keperluan aplikasi.
Atas ialah kandungan terperinci pertambahan susunan golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!