Copia del Golang

Copia del Golang
Il metodo di copia in GO consente di copiare elementi da una fetta specificata a un'altra fetta. La funzione restituirà quindi il numero di elementi copiati.

La sintassi della funzione è come mostrata:

Func Copy (DST, SRC [] Tipo) int

La funzione prende la destinazione e la fetta di origine come argomento. Come accennato, ha restituito il numero di elementi copiati.

Il numero di elementi è determinato dalla lunghezza minima dell'origine e della fetta di destinazione. Questo è indipendentemente dall'argomento sovrapposizione.

Copia la fetta in un'altra fetta

L'esempio seguente illustra come copiare una fetta in un'altra fetta.

Pacchetto principale
Importa "FMT"
funcmain ()
slice_1: = [] int 1, 2, 3, 4, 5
slice_2: = make ([] int, 3)
fmt.Println ("prima (slice_1):", slice_1)
fmt.Println ("prima (slice_2):", slice_2)
// copia
copied_elements: = copy (slice_2, slice_1)
fmt.Println ("After (slice_1):", slice_1)
fmt.Println ("After (slice_2):", slice_2)
fmt.Println ("elementi copiati:", copied_elements)

Il codice sopra deve restituire un output come mostrato:

Prima (slice_1): [1 2 3 4 5]
Prima (slice_2): [0 0 0]
Dopo (slice_1): [1 2 3 4 5]
Dopo (slice_2): [1 2 3]
Elementi copiati: 3

Si noti che il numero di elementi copiati è determinato dalla lunghezza minima dell'origine o della fetta di destinazione. Nel nostro esempio, la lunghezza minima è 3 determinata da Slice_2.

Copia la stringa nella fetta di byte.

Sappiamo in Go, una stringa è fondamentalmente una fetta di byte. Quindi, dovrebbe essere possibile copiare una stringa in una fetta di byte.

Considera l'esempio seguente:

packagemain
Importa "FMT"
funcmain ()
str: = "ciao"
byte_slice: = make ([] byte, 10)
copied_elements: = copy (byte_slice, str)
fmt.Println ("elementi copiati:", copied_elements)
fmt.Println ("str:", str)
fmt.Println ("byte slice:", byte_slice)

Quanto sopra dovrebbe copiare la stringa nella fetta di byte. L'output risultante è come:

Elementi copiati: 5
STR: Ciao
Slice byte: [104 101 108 108 111 0 0 0 0 0]

Conclusione

In questo articolo, abbiamo imparato a utilizzare la funzione di copia. Questo ci consente di copiare elementi da una fetta di origine a una destinazione specificata. Possiamo anche copiare una stringa su una fetta di byte come mostrato negli esempi.

Grazie per aver letto!