Heim  >  Artikel  >  Backend-Entwicklung  >  Golang-Aufzählung zu int

Golang-Aufzählung zu int

WBOY
WBOYOriginal
2023-05-14 18:55:09902Durchsuche

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!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn