Junior — Middle
Puoi spiegare il principio di funzionamento degli slice nel linguaggio di programmazione?
sobes.tech AI
Risposta dell'AI
Una slice in Go è una vista dinamica e modificabile di una sequenza di elementi dello stesso tipo. Contiene:
- un puntatore a un array,
- la lunghezza (numero di elementi nella slice),
- la capacità (il numero massimo di elementi che può contenere senza allocare nuova memoria).
Le slice permettono di lavorare con parti di array o di creare nuove sequenze dinamiche senza copiare i dati.
Esempio:
arr := [5]int{1, 2, 3, 4, 5}
s := arr[1:4] // slice di elementi con indici 1,2,3: [2 3 4]
fmt.Println(s) // [2 3 4]
s = append(s, 6) // aggiunge un elemento, se la capacità lo permette, la slice si espande
Le slice sono utili perché consentono di lavorare in modo efficiente con i dati, senza copiare gli array, e di modificare dinamicamente la dimensione della sequenza.