Heim >Backend-Entwicklung >Golang >Wie verwende ich Strukturen in Go?
Beim Entwerfen eines Programms ist die Verwendung von Strukturen eine sehr gängige Methode. In der Go-Sprache ist Struktur ein sehr leistungsfähiges Konzept, das uns helfen kann, Code besser zu organisieren und zu verwalten. In diesem Artikel erklären wir ausführlich, wie man Strukturen in Go verwendet.
Was ist eine Struktur?
Struktur ist ein benutzerdefinierter Datentyp, der aus mehreren Datenfeldern besteht. Jedes Feld kann ein beliebiger grundlegender Datentyp sein, beispielsweise eine Zahl, eine Zeichenfolge oder ein boolescher Wert, oder eine Kombination anderer Strukturen. Auf Felder in einer Struktur kann ähnlich wie auf Objekteigenschaften mithilfe der Punktnotation zugegriffen werden.
In Go können Sie Typen verwenden, um Strukturen zu definieren.
type Person struct {
name string age int language []string
}
Dieses Beispiel definiert eine Struktur namens Person, die drei Felder enthält: Name, Alter und Sprache. name ist vom Typ string, age ist vom Typ int und language ist ein String-Slice. Mit dem folgenden Befehl können wir eine neue Personenstruktur erstellen.
person := Person{name: "Tom", Alter: 25, Sprache: []string{"Chinesisch", "Englisch"}}
Auf die Felder der Struktur kann über Punkte zugegriffen werden:
fmt.Println (Person.Name)
Anonyme Felder in Go-Strukturen
In Go können Sie auch anonyme Felder verwenden, um die Struktur kompakter zu gestalten. Anonyme Felder sind Strukturfelder und haben keinen Namen. Wenn zwei oder mehr Felder denselben Typ haben, können sie als anonyme Felder definiert werden.
Hier ist ein Beispiel, das anonyme Felder unterstützt:
type Person struct {
name string address
}
type address struct {
street string city string state string
}
Im obigen Code enthält die Person struct ein anonymes Feld namens address . Die Struktur definiert außerdem einen Adresstyp, der über drei Felder verfügt: Straße, Stadt und Bundesland. Wir können auf solche verschachtelten Felder zugreifen.
person := Person{Name: „Tom“, Adresse: Adresse{Straße: „Main St.“, Stadt: „New York“, Bundesstaat: „NY“}}
fmt.Println(person.address.city )
Verschachtelte Strukturen in Go-Strukturen
Strukturen können ineinander verschachtelt werden, wodurch wir komplexere Datenstrukturen erstellen können. Eine Struktur kann in eine andere Struktur eingebettet sein.
type Person struct {
name string contact Contact
}
type Contact struct {
email string phone string address string
}
Im obigen Code ist eine Kontaktstruktur in der Personenstruktur verschachtelt. Eine neue Personenstruktur kann auf folgende Weise erstellt werden.
person := Person{Name: „Tom“, Kontakt: Kontakt{E-Mail: „tom@gmail.com“, Telefon: „888-888-8888“, Adresse: „Main St.“}}
fmt. Println(person.contact.phone)
Methoden in Go-Strukturen
In Go können Strukturen Methoden definieren, die über Strukturinstanzen aufgerufen werden können. Eine Methode ist eine spezielle Funktion, die nur über eine Struktur aufgerufen werden kann.
Mit dem folgenden Code können wir Methoden hinzufügen.
type Person struct {
name string age int
}
func (p Person) sayHello() {
fmt.Printf("Hello, my name is %s, I'm %d years old.
", p.name, p.age)
}
Im obigen Code ist sayHello() eine Namensmethode für die Personenstruktur.
Wir können den folgenden Code verwenden, um diese Methode aufzurufen:
person := Person{name: „Tom“, Alter: 25}
person.sayHello()
Im obigen Beispiel haben wir erstellt Ein Person-Objekt und das Objekt zum Aufrufen der sayHello()-Methode. Diese Methode gibt eine Begrüßung an die Konsole aus.
Fazit: Die Go-Struktur ist ein sehr wichtiges Konzept in der objektorientierten Programmierung In diesem Artikel erklären wir ausführlich, wie man Strukturen in Go verwendet, wie man anonyme Felder und verschachtelte Strukturen verwendet und wie man sie aufruft für Sie und helfen Ihnen, die Go-Sprachprogrammierung besser zu beherrschen.
Das obige ist der detaillierte Inhalt vonWie verwende ich Strukturen in Go?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!