Slice vs array
Lezione 2 di 21 del corso Slice e mappe in GoLang di Coddy.
In altri linguaggi di programmazione, incontriamo spesso array dinamici. In Go, sono chiamati slice e ci permettono di aggiungere o rimuovere elementi in modo dinamico. Tuttavia, è importante notare che una slice non memorizza direttamente gli elementi; funge invece da finestra su un array.
Ora esploriamo la differenza tra una slice e un array con un esempio. Consideriamo un array con tre elementi:
arr := [3]string{"Python", "Go", "Rust"}Come sappiamo, un array è un tipo di raccolta di dimensione fissa, quindi è impossibile aggiungere elementi. Se proviamo ad aggiungere un nuovo elemento, si verificheranno degli errori.
È qui che entrano in gioco le slice, per superare questa limitazione. Vediamolo con un esempio:
var books = []string{"SQL", "Java", "C++"}Come puoi vedere, definiamo la slice <strong>books</strong> nello stesso modo di un normale array, con l'unica differenza che non ne definiamo la lunghezza.
Questo ci permette di aggiungere o rimuovere elementi dinamicamente durante l'esecuzione, un'operazione impossibile con gli array.
Accedere agli elementi di una slice è simile a farlo negli array e si utilizzano gli indici:
fmt.Println(books[1]) // JavaIn Go, le slice offrono flessibilità nel lavorare con le raccolte, consentendo modifiche dinamiche, a differenza degli array, che hanno una struttura fissa.
Sfida
Facile- Definisci una slice con i seguenti elementi: "Learn Go", "Learn Python", "Learn Java", "Coddy.tech" in sequenza.
- Stampa "Learn Go" e "Coddy.tech" sullo schermo usando gli indici.
- Puoi dare alla slice il nome che preferisci.
Provalo tu
package main
import (
"fmt"
)
func main() {
// Il tuo codice qui
}
Tutte le lezioni di Slice e mappe in GoLang
1Introduzione
IntroduzioneEsercitati da solo: Compilatore Go online