Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menukar Tatasusunan Saiz Tetap kepada Tatasusunan Bersaiz Boleh Ubah dalam Go?

Bagaimana untuk Menukar Tatasusunan Saiz Tetap kepada Tatasusunan Bersaiz Boleh Ubah dalam Go?

DDD
DDDasal
2024-11-09 07:06:02979semak imbas

How to Convert Fixed Size Arrays to Variable Sized Arrays in Go?

Menukar Tatasusunan Saiz Tetap kepada Tatasusunan Bersaiz Boleh Ubah dalam Go

Satu cabaran biasa yang dihadapi oleh pembangun dalam Go ialah menukar tatasusunan saiz tetap kepada tatasusunan bersaiz berubah-ubah , dikenali sebagai kepingan. Penukaran ini boleh dicapai dengan teknik mudah.

Pertimbangkan contoh berikut:

package main

import (
    "fmt"
)

func main() {
    var a [32]byte
    b := a[:] // Note the syntax used here
    fmt.Printf(" %x", b)
}

Dalam contoh ini, kami mempunyai tatasusunan saiz tetap a daripada jenis [32]bait. Kami mahu menukar tatasusunan ini kepada kepingan b jenis []bait. Kunci kepada penukaran ini terletak pada pernyataan tugasan:

b := a[:]

Pengendali titik bertindih ([:]) mencipta hirisan yang merentangi keseluruhan panjang tatasusunan. Dalam erti kata lain, ia mencipta hirisan yang merujuk data asas yang sama seperti tatasusunan.

Apabila kod ini dijalankan, ia akan mencetak perwakilan perenambelasan kandungan hirisan, dengan berkesan menukar tatasusunan saiz tetap a kepada tatasusunan saiz boleh ubah b.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Tatasusunan Saiz Tetap kepada Tatasusunan Bersaiz Boleh Ubah dalam Go?. 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