Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bincangkan beberapa kaedah menambah elemen pada tatasusunan dalam Golang

Bincangkan beberapa kaedah menambah elemen pada tatasusunan dalam Golang

PHPz
PHPzasal
2023-04-11 10:38:501571semak imbas

Dalam Golang, tatasusunan ialah struktur data dengan panjang tetap dan jenis yang sama Ia mesti menentukan panjang apabila ia diisytiharkan dan panjangnya tidak boleh diubah. Had ini kadangkala menjadikan operasi tatasusunan menyusahkan, seperti apabila menambahkan elemen pada tatasusunan. Dalam artikel ini, kita akan membincangkan beberapa cara untuk menambah elemen pada tatasusunan dalam Golang.

  1. Menggunakan kepingan

Kepingan dalam Golang ialah jujukan panjang dinamik yang dilaksanakan berdasarkan tatasusunan Kami boleh menukar tatasusunan menjadi kepingan dan kemudian menggunakan fungsi tambah untuk menambah unsur hirisan. Kelebihan ini ialah kepingan saiz baharu akan dibuat secara automatik dan data dalam tatasusunan akan disalin ke kepingan baharu.

Kod sampel adalah seperti berikut:

package main
import "fmt"
func main() {
    arr := []int{1, 2, 3, 4, 5}
    slice := arr[:]
    slice = append(slice, 6)
    fmt.Println(slice)
}

Dalam contoh di atas, kita mula-mula menukar tatasusunan "arr" yang mengandungi 5 elemen kepada hirisan "slice", dan kemudian gunakan " append " menambah integer "6" pada kepingan. Menjalankan kod di atas, kita akan melihat output:

[1 2 3 4 5 6]

Melalui operasi di atas, kami telah berjaya menambah elemen pada tatasusunan panjang tetap dan mendapat panjang baharu 6 Slicing, kaedah ini sangat selesa.

  1. Salin dan tambah panjang secara manual

Kaedah kedua ialah menyalin data dalam tatasusunan secara manual ke tatasusunan baharu dan menambah elemen satu demi satu. Kelemahan kaedah ini ialah ia agak tidak cekap kerana kita perlu menyalin elemen secara manual dalam tatasusunan dan melintasi keseluruhan tatasusunan.

Kod sampel adalah seperti berikut:

package main
import "fmt"
func main() {
    arr := [5]int{1, 2, 3, 4, 5}
    newArr := [6]int{}
    for index, value := range arr {
        newArr[index] = value
    }
    newArr[5] = 6
    fmt.Println(newArr)
}

Dalam contoh di atas, kita mula-mula mencipta tatasusunan "arr" yang mengandungi 5 integer, dan kemudian mencipta tatasusunan baharu dengan panjang 6 "newArr ", dan gunakan gelung "untuk" untuk mengulangi "arr", salin elemen ke dalam "newArr", dan akhirnya tambahkan integer "6" kepada "newArr". Menjalankan kod di atas, kita akan melihat output:

[1 2 3 4 5 6]

Melalui operasi di atas, kami telah berjaya menambah elemen pada tatasusunan tetap panjang dan mendapat panjang baharu 6 Array, kaedah ini lebih menyusahkan untuk digunakan, tetapi jika jumlah data yang anda perlukan untuk memproses adalah kecil, atau anda tidak terlalu mengambil berat tentang kecekapan pelaksanaan kod, maka ini juga merupakan pilihan.

Kesimpulan

Secara amnya, kaedah menambah elemen pada tatasusunan dalam Golang adalah agak mudah, tetapi ingat bahawa tatasusunan adalah panjang tetap, dan had ini mungkin memerlukan lebih banyak kod untuk menyelesaikan operasi daripada menambah elemen. Dalam projek sebenar, kita harus memilih kaedah yang sesuai berdasarkan keperluan khusus dan memberi perhatian kepada kecekapan kod.

Atas ialah kandungan terperinci Bincangkan beberapa kaedah menambah elemen pada tatasusunan dalam Golang. 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