Golang Print Struct

Golang Print Struct
Eine Struktur oder Struktur ist eine Sammlung verschiedener Felder mit ähnlichen oder unterschiedlichen Datentypen. Strukturen sind unglaublich nützlich, da Sie ein Layout oder Blaupause für ein bestimmtes Objekt in einem Programm definieren können. Stellen Sie sich Strukturen als eine leichte Version von OOP vor.

In diesem Leitfaden werden wir untersuchen, wie wir eine Struktur und verschiedene Methoden zum Drucken einer Struktur in Go deklarieren können.

Eine Struktur deklarieren

Wir können eine Struktur in Go mit dem Schlüsselwort deklarieren. Wir beginnen mit dem Schlüsselwort -Typ, gefolgt vom Namen der Struktur und der Schlüsselwortstruktur.

Die Syntax wird gezeigt:

Geben Sie struct_name -Typ ein

Wir schließen dann Felder der Struktur in ein Paar lockiger Zahnspangen ein.

Das folgende Beispiel schafft eine einfache Struktur:

Paket Main
Geben Sie die Benutzerstruktur ein
Name Zeichenfolge
Alter int
Beschäftigt bool

func main ()

In der obigen Syntax erstellen wir eine Struktur namens User. Wir setzen dann die Felder verschiedener Datentypen.

Strukturinstanz

Nach der Strukturerklärung müssen wir eine Instanz der Struktur erstellen. Das folgende Beispiel zeigt, wie Sie eine Instanz der Benutzerstruktur erstellen.

Benutzer1: = Benutzer "Jane Doe", 65, False

Das obige Ausschnitt erstellt eine Instanz der Benutzerstruktur namens User1.

Druckstruktur

Wir können eine Struktur mit der Printf -Methode aus dem FMT -Paket drucken. Es bietet uns spezielle Formatierungsoptionen zum Drucken einer Struktur. Solche Optionen umfassen:

Formatierungsoption Bedeutung
%v Drucken Sie den Wert der Variablen im Standardformat aus
%+v Druckenstruktur Feldname und der zugeordnete Wert

Betrachten Sie den folgenden Beispielcode:

Paket Main
importieren "fmt"
Geben Sie die Benutzerstruktur ein
Name Zeichenfolge
Alter int
Beschäftigt bool

func main ()
Benutzer1: = Benutzer "Jane Doe", 65, False
fmt.Printf ("%v \ n", user1)
fmt.Printf ("%+v \ n", user1)
fmt.Printf ("%d \ n", user1.Alter)
fmt.Printf ("%s \ n", user1.Name)

Mit der FRINTF -Funktion können wir alle Felder in der Struktur abrufen oder auf einzelne Werte für die Struktur zugreifen.

Die resultierende Ausgabe ist wie gezeigt:

Jane Doe 65 Falsch
Name: Jane Doe Age: 65 verwendet: Falsch
65
Jane Doe

Beachten Sie, dass der %v -Formatierer nur die Werte druckt. Wenn Sie den Feldnamen und den zugehörigen Wert erhalten möchten, verwenden wir die Option %+V.

Druckenstruktur - JSON.Marshall

Die zweite Methode, mit der Sie eine Struktur drucken können.

Sehen Sie sich unser Tutorial über JSON Marschall und Unmarshall in Go, um mehr zu erfahren.

Das folgende Beispiel zeigt, wie die Marschallfunktion verwendet wird.

Paket Main
importieren (
"Codierung/JSON"
"fmt"
)
Geben Sie die Benutzerstruktur ein
Name Zeichenfolge
Alter int
Beschäftigt bool

func main ()
Benutzer1: = Benutzer "Jane Doe", 65, False
JSON, _: = json.Marschall (User1)
fmt.Println (String (JSON))

Die Funktion sollte die Strukturfelder und Werte zurückgeben, wie in der folgenden Ausgabe gezeigt:

"Name": "Jane Doe", "Alter": 65, "angewendet": false

Abschluss

Auf dem folgenden Beispiel werden verschiedene Methoden zum Drucken einer Struktur erörtert, z. B. die Prinft -Funktion und JSON -Marschall.

Danke fürs Lesen!