Obwohl es in Golang keinen Aufzählungstyp gibt, können wir die Aufzählungsfunktion dennoch auf andere Weise implementieren. In Situationen, in denen wir einen Aufzählungstyp in einen Ganzzahltyp konvertieren müssen, können wir zum Konvertieren die folgende Methode verwenden.
Angenommen, wir haben den folgenden Aufzählungstyp:
type Color int const ( Red Color = iota Green Blue )
Wir können den ganzzahligen Wert jedes Aufzählungswerts erhalten, indem wir den Aufzählungstyp in einen ganzzahligen Typ konvertieren. In Golang können Aufzählungswerte, die Basistypen verwenden, Ganzzahltypen mit oder ohne Vorzeichen sein.
Wenn Sie den Aufzählungstyp in einen Ganzzahltyp konvertieren müssen, müssen Sie nur die Typkonvertierung für den Aufzählungswert durchführen, wie unten gezeigt:
func main() { var color Color = Blue fmt.Println(int(color)) // 输出2 }
Der obige Code wird Typ Der Aufzählungswert von Farbe wird in einen ganzzahligen Typ konvertiert und ausgegeben. In diesem Beispiel ist der Wert von Blau 2, also ist die Ausgabe 2.
Gleichzeitig können wir auch erwägen, dem Aufzählungstyp eine ToInt-Methode hinzuzufügen, um den Aufzählungswert direkt in einen Ganzzahltyp umzuwandeln. Zum Beispiel:
func (c Color) ToInt() int { return int(c) }
Dann können wir diese Methode wie folgt verwenden:
func main() { var color Color = Green fmt.Println(color.ToInt()) // 输出1 }
Wenn wir den Aufzählungstyp in einen Ganzzahltyp konvertieren müssen, können die beiden oben genannten Methoden verwendet werden die gewünschten Ergebnisse erzielen.
Obwohl Golang selbst keine Aufzählungstypen bereitstellt, können wir Aufzählungen durch Konstanten und Iota simulieren. Diese Implementierungsmethode ist einfacher, flexibler und kann auch unsere Anforderungen erfüllen.
Im Allgemeinen ist es in Golang eine sehr einfache Sache, Aufzählungstypen in Ganzzahltypen umzuwandeln. Um dies zu erreichen, können wir Typkonvertierung oder benutzerdefinierte Methoden verwenden und entsprechend den spezifischen Anforderungen auswählen.
Das obige ist der detaillierte Inhalt vonGolang-Aufzählung zu int. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!