Golang est un langage compilé statiquement et sa structure est un type de données très utile. Dans Golang, les structures peuvent être utilisées pour décrire les propriétés et les méthodes d'une entité, peuvent stocker différents types de données et peuvent également être imbriquées avec d'autres structures pour créer des structures de données complexes. Cependant, lorsque nous utilisons des types de structure dans Golang, nous devons parfois les modifier. Cet article expliquera comment modifier les structures dans Golang.
1. Définition de la structure
En Golang, une structure peut être définie avec un ensemble de champs. Vous pouvez définir une structure avec deux champs (un de type int et un de type string) en utilisant le code suivant :
type Person struct { Age int Name string }
Dans cet exemple, nous définissons une structure appelée Person, qui comporte deux champs : Age et Name. Notez que les noms de champs de structure doivent commencer par une lettre majuscule. Ceci afin qu'ils puissent être exportés pour être utilisés dans d'autres packages.
2. Initialisation de la structure
Dans Golang, vous pouvez utiliser le code suivant pour initialiser la structure :
p := Person{Age: 18, Name: "John"}
De cette façon, un objet Personne nommé p est créé, son attribut Age est 18 et son attribut Name est " John".
3. Accès à la structure
Dans Golang, vous pouvez utiliser le code suivant pour accéder aux champs de la structure :
fmt.Println(p.Age) p.Age = 20
Le code ci-dessus affichera l'attribut Age de p et le modifiera à 20.
4. Définition des méthodes de structure
En plus de définir des structures, nous pouvons également définir des méthodes sur les structures. Une méthode est une fonction qui permet d'accéder aux champs d'une structure et peut lire et modifier les valeurs de la structure. Vous pouvez définir une méthode struct en utilisant le code suivant :
func (p *Person) SetAge(age int) { p.Age = age }
Dans cet exemple, nous définissons une méthode struct appelée SetAge. Il accepte un paramètre de type int et l'affecte au champ Age de la structure.
5. Modification de la structure
Dans Golang, vous pouvez utiliser l'opérateur point pour accéder aux champs de la structure, ou vous pouvez modifier les valeurs des champs de la structure via des pointeurs. Par exemple, le code suivant affichera la propriété Age de p et la modifiera à 20.
fmt.Println(p.Age) p.Age = 20
Si vous souhaitez modifier la valeur d'une structure à l'intérieur d'une fonction, vous devez utiliser un pointeur. Par exemple :
func SetName(p *Person, name string) { p.Name = name } SetName(&p, "Jim")
Dans cet exemple, nous passons le pointeur de l'objet Person à la fonction SetName. Le paramètre de fonction p est un pointeur vers l'objet Person, qui peut être modifié en "Jim" via le pointeur.
6. Imbrication de structures
Les structures peuvent être imbriquées dans d'autres structures. Cela vous permet de créer des structures de données plus complexes. Par exemple :
type Address struct { City string State string } type Family struct { Address Address Members []Person }
Dans cet exemple, nous définissons une structure Famille, où Adresse est un type de structure imbriquée qui contient deux champs : Ville et État. La structure Famille contient également une tranche contenant plusieurs types de personnes.
7. Modification des structures
Lors de la modification de structures imbriquées, vous devez y accéder comme des champs, comme la structure Adresse dans la structure Famille :
func SetCity(f *Family, city string) { f.Address.City = city } SetCity(&f, "New York")
Dans cet exemple, nous sommes dans la structure Famille Une méthode SetCity est définie ci-dessus, qui accepte un pointeur vers un objet Family et définit son champ Address.City sur « New York ».
8. Clone de structure
Parfois, nous devons cloner un objet structure. Dans ce cas, nous pouvons utiliser la méthode suivante :
func Clone(p Person) Person { return p } c := Clone(p)
Dans cet exemple, nous définissons une fonction appelée Clone, qui accepte un objet Person et renvoie un. nouvel objet Person, créant ainsi avec succès une copie de l'objet structure.
9. Résumé
Dans Golang, les structures peuvent être utilisées pour stocker et exploiter facilement des types de données complexes. Lorsque vous devez modifier la valeur de la structure, vous pouvez utiliser des pointeurs pour y accéder et la modifier. Les structures peuvent imbriquer d'autres structures pour créer des structures de données plus complexes. En clonant une structure, vous pouvez créer un nouvel objet struct, ce qui est plus pratique.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!