Creazione di Struct
Fino a questo punto, abbiamo utilizzato variabili di diversi tipi di dati di base, come int, float32, string, e così via. Tuttavia, abbiamo la possibilità di creare nuovi tipi di dati, che sono essenzialmente raccolte di altri tipi di dati.
Gli struct, noti anche come strutture, sono fondamentalmente tipi di dati definiti dall'utente. Pertanto, uno struct può talvolta essere indicato anche come tipo di dato.
Nell'immagine sopra, è illustrata una struttura chiamata Person, che comprende campi di diversi tipi di dati, nello specifico name, age e salary. Una struttura stessa funge da modello che definisce quali dati verranno memorizzati in un'istanza del suo tipo. Possiamo creare un'istanza, ovvero una variabile, utilizzando il tipo di dato Person, e poi memorizzare al suo interno il nome, l'età e il salario di una persona.
Allo stesso modo, possiamo anche creare array utilizzando il tipo di dato Person. Pertanto, gli struct sono molto utili quando si desidera memorizzare e accedere a dati correlati in modo organizzato.
La seguente sintassi viene utilizzata per dichiarare uno struct nel codice:
type structName struct {
element_1 datatype
element_2 datatype
element_3 datatype
…
}
Nota
I termini
typeestructsono parole chiave in Golang.
Seguendo la sintassi sopra, possiamo implementare l'esempio dello struct Person, discusso in precedenza:
Di seguito è riportato un altro esempio leggermente più complesso che contiene anche un array:
index.go
1234567type Student struct { name string age int id int course string grades [5]float32 }
Nell'esempio sopra, è presente un campo chiamato grades, che è un array di dimensione 5 e di tipo float32. Nei capitoli successivi vedremo come memorizzare, accedere e modificare i dati delle struct.
Possiamo anche fare riferimento ad altre struct (tipi di dati personalizzati) all'interno della definizione delle struct. Ad esempio, la struct Course include un campo chiamato students, che è uno slice di tipo Student:
index.go
1234type Course struct { name string students []Student }
Grazie per i tuoi commenti!
Chieda ad AI
Chieda ad AI
Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione
Can you explain how to create an instance of a struct in Go?
How do I access or modify the fields of a struct?
What is the difference between an array and a slice in the context of structs?
Awesome!
Completion rate improved to 1.96
Creazione di Struct
Scorri per mostrare il menu
Fino a questo punto, abbiamo utilizzato variabili di diversi tipi di dati di base, come int, float32, string, e così via. Tuttavia, abbiamo la possibilità di creare nuovi tipi di dati, che sono essenzialmente raccolte di altri tipi di dati.
Gli struct, noti anche come strutture, sono fondamentalmente tipi di dati definiti dall'utente. Pertanto, uno struct può talvolta essere indicato anche come tipo di dato.
Nell'immagine sopra, è illustrata una struttura chiamata Person, che comprende campi di diversi tipi di dati, nello specifico name, age e salary. Una struttura stessa funge da modello che definisce quali dati verranno memorizzati in un'istanza del suo tipo. Possiamo creare un'istanza, ovvero una variabile, utilizzando il tipo di dato Person, e poi memorizzare al suo interno il nome, l'età e il salario di una persona.
Allo stesso modo, possiamo anche creare array utilizzando il tipo di dato Person. Pertanto, gli struct sono molto utili quando si desidera memorizzare e accedere a dati correlati in modo organizzato.
La seguente sintassi viene utilizzata per dichiarare uno struct nel codice:
type structName struct {
element_1 datatype
element_2 datatype
element_3 datatype
…
}
Nota
I termini
typeestructsono parole chiave in Golang.
Seguendo la sintassi sopra, possiamo implementare l'esempio dello struct Person, discusso in precedenza:
Di seguito è riportato un altro esempio leggermente più complesso che contiene anche un array:
index.go
1234567type Student struct { name string age int id int course string grades [5]float32 }
Nell'esempio sopra, è presente un campo chiamato grades, che è un array di dimensione 5 e di tipo float32. Nei capitoli successivi vedremo come memorizzare, accedere e modificare i dati delle struct.
Possiamo anche fare riferimento ad altre struct (tipi di dati personalizzati) all'interno della definizione delle struct. Ad esempio, la struct Course include un campo chiamato students, che è uno slice di tipo Student:
index.go
1234type Course struct { name string students []Student }
Grazie per i tuoi commenti!