Heim  >  Artikel  >  Backend-Entwicklung  >  Eine kurze Analyse der Golang-Methode der Basenkonvertierung

Eine kurze Analyse der Golang-Methode der Basenkonvertierung

PHPz
PHPzOriginal
2023-04-14 09:33:271169Durchsuche

Golang (auch bekannt als Go-Sprache) ist eine Open-Source-Programmiersprache, die von Google entwickelt und gepflegt wird. Die Basiskonvertierung in Golang ist ein sehr grundlegender Vorgang. In diesem Artikel stellen wir vor, wie man Golang für die Hexadezimalkonvertierung verwendet.

  1. Dezimalzahl in andere Basen umwandeln

Schauen wir uns zunächst an, wie man Dezimalzahlen in andere Basen wie Binär-, Oktal- und Hexadezimalzahlen umwandelt. In Golang kann diese Aufgabe einfach mit der Funktion Printf() des fmt-Pakets erledigt werden. Das Folgende ist ein Beispielcode, der die Dezimalzahl 13 in Binär-, Oktal- und Hexadezimalzahl umwandelt:

package main

import "fmt"

func main() {

n := 13
fmt.Printf("13的二进制表示为:%b\n", n)
fmt.Printf("13的八进制表示为:%o\n", n)
fmt.Printf("13的十六进制表示为:%x\n", n)

}

Das Ausgabeergebnis ist:

Die binäre Darstellung von 13 lautet: 1101 Die oktale Darstellung von 13 lautet: 15 Die hexadezimale Darstellung von 13 lautet: d

Konvertieren Sie andere Basen in Dezimalzahlen dezimal. Dies kann durch das strconv-Paket in Golang erreicht werden. Dieses Paket bietet viele stringbezogene Funktionen, einschließlich Funktionen zum Parsen von Ganzzahlen in verschiedenen Basen. Das Folgende ist ein Beispielcode, der die Binärzahl 1101, die Oktalzahl 15 und die Hexadezimalzahl d in eine Dezimalzahl umwandelt:
  1. package main
import (

"fmt"
"strconv"
)

func main() {

b := "1101"
dec1, _ := strconv.ParseInt(b, 2, 64)
fmt.Printf("%s的十进制表示为:%v\n", b, dec1)

o := "15"
dec2, _ := strconv.ParseInt(o, 8, 64)
fmt.Printf("%s的十进制表示为:%v\n", o, dec2)

h := "d"
dec3, _ := strconv.ParseInt(h, 16, 64)
fmt.Printf("%s的十进制表示为:%v\n", h, dec3)
}

Das Ausgabeergebnis ist:

Die Dezimaldarstellung von 1101 ist: 13 Die Dezimaldarstellung von

15 ist: 13 Die Dezimaldarstellung von

d ist: 13

Umrechnung zwischen Basen

Zusätzlich zur Umrechnung zwischen Dezimalstellen Systeme bietet Golang auch Methoden zum Konvertieren zwischen verschiedenen Basen. Die Funktion Itoa() im Paket strconv kann eine Ganzzahl in eine Zeichenfolge konvertieren, und die Funktion FormatInt() kann eine Ganzzahl in eine Zeichenfolge in einer bestimmten Basis konvertieren. Das Folgende ist ein Beispielcode, der die Hexadezimalzahl d in eine Binär- oder Oktalzahl umwandelt:
  1. package main
import (

"fmt"
"strconv"
)

func main() {

h := "d"

//将十六进制数d转换为二进制
dec, _ := strconv.ParseInt(h, 16, 64)
fmt.Printf("%s的二进制表示为:%b\n", h, dec)

//将十六进制数d转换为八进制
oct, _ := strconv.ParseInt(h, 16, 64)
fmt.Printf("%s的八进制表示为:%o\n", h, oct)
}

Das Ausgabeergebnis ist:

The Die binäre Darstellung von d lautet: 1101

Die oktale Darstellung von d lautet: 15

Fazit: Die Basiskonvertierung durch Golang ist eine sehr grundlegende Operation. In diesem Artikel wird die Methode zur Verwendung der Pakete fmt und strconv zur Basiskonvertierung vorgestellt, einschließlich der Konvertierung von Dezimalzahlen in andere Basen, der Konvertierung anderer Basen in Dezimalzahlen, der Konvertierung zwischen Basen usw. Ich hoffe, dieser Artikel kann Golang-Anfängern helfen.

Das obige ist der detaillierte Inhalt vonEine kurze Analyse der Golang-Methode der Basenkonvertierung. 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