Heim  >  Artikel  >  Backend-Entwicklung  >  Was ist Golang-Byte?

Was ist Golang-Byte?

(*-*)浩
(*-*)浩Original
2019-12-13 10:59:5510652Durchsuche

Jedes Element in der Zeichenfolge wird als „Zeichen“ bezeichnet. Zeichen können beim Durchlaufen oder Abrufen eines einzelnen Zeichenfolgenelements abgerufen werden.

Was ist Golang-Byte?

Es gibt zwei Arten von Zeichen in der Go-Sprache:

Eine davon ist der Typ uint8 oder Bytetyp. Repräsentiert ein Zeichen im ASCII-Code. (Empfohlenes Lernen: go)

Der andere ist der Runentyp, der ein UTF-8-Zeichen darstellt, das Sie verwenden müssen, wenn Sie chinesische, japanische oder andere zusammengesetzte Zeichen verarbeiten müssen der Runentyp. Der Rune-Typ entspricht dem Typ int32. Der

Byte-Typ ist ein Alias ​​für uint8, was für herkömmliche ASCII-codierte Zeichen, die nur 1 Byte belegen, völlig in Ordnung ist, wie z. B. var ch byte = 'A', und die Zeichen werden in einfache Anführungszeichen gesetzt.

In der ASCII-Codetabelle beträgt der Wert von A 65 und in der Hexadezimalschreibweise 41, sodass die folgende Schreibweise äquivalent ist:

var ch byte = 65 或 var ch byte = '\x41'      //(\x 总是紧跟着长度为 2 的 16 进制数)

Zusätzlich Eins Eine mögliche Schreibweise besteht darin, eine Oktalzahl mit der Länge 3 einzufügen, beispielsweise 377.

Die Go-Sprache unterstützt auch Unicode (UTF-8), daher werden Zeichen auch Unicode-Codepunkte oder Runen genannt und im Speicher durch int dargestellt. In Dokumenten wird im Allgemeinen das Format U+hhhh verwendet, wobei h eine Hexadezimalzahl darstellt.

Beim Schreiben von Unicode-Zeichen müssen Sie das Präfix u oder U vor der Hexadezimalzahl hinzufügen. Da Unicode mindestens 2 Bytes belegt, verwenden wir zur Darstellung den Typ int16 oder int. Wenn Sie 4 Bytes verwenden müssen, verwenden Sie das Präfix u. Wenn Sie 8 Bytes verwenden müssen, verwenden Sie das Präfix U.

var ch int = '\u0041'
var ch2 int = '\u03B2'
var ch3 int = '\U00101234'
fmt.Printf("%d - %d - %d\n", ch, ch2, ch3) // integer
fmt.Printf("%c - %c - %c\n", ch, ch2, ch3) // character
fmt.Printf("%X - %X - %X\n", ch, ch2, ch3) // UTF-8 bytes
fmt.Printf("%U - %U - %U", ch, ch2, ch3)   // UTF-8 code point

Ausgabe:

65 - 946 - 1053236
A - β - r
41 - 3B2 - 101234
U+0041 - U+03B2 - U+101234

Der Formatbezeichner %c wird zur Darstellung von Zeichen verwendet, %v oder %d werden ausgegeben Ganzzahl, die zur Darstellung des Zeichens verwendet wird. %U gibt eine Zeichenfolge im Format U+hhhh aus.

Das Unicode-Paket verfügt über einige integrierte Funktionen zum Testen von Zeichen. Der Rückgabewert dieser Funktionen ist ein boolescher Wert, wie unten gezeigt (wobei ch das Zeichen darstellt):

判断是否为字母:unicode.IsLetter(ch)
判断是否为数字:unicode.IsDigit(ch)
判断是否为空白符号:unicode.IsSpace(ch)

Das obige ist der detaillierte Inhalt vonWas ist Golang-Byte?. 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
Vorheriger Artikel:So installieren Sie Golang GinNächster Artikel:So installieren Sie Golang Gin