Rumah  >  Artikel  >  pembangunan bahagian belakang  >  penukaran bait golang

penukaran bait golang

WBOY
WBOYasal
2023-05-19 10:02:06577semak imbas

Jenis bait dalam Golang ialah jenis data yang sangat penting, yang digunakan untuk menyimpan data binari 8-bit. Dalam kebanyakan kes, kita perlu menukar jenis bait supaya pemprosesan dan operasi data boleh dilakukan dengan lebih mudah. Artikel ini akan memperkenalkan cara melakukan penukaran bait.

  1. Tukar bait kepada rentetan

Dalam Golang, anda boleh menggunakan fungsi rentetan() untuk menukar jenis bait kepada rentetan. Contohnya adalah seperti berikut:

package main

import "fmt"

func main() {
    b := []byte{'h','e','l','l','o'}
    s := string(b)
    fmt.Println(s)  // 输出为 "hello"
}
  1. rentetan ditukar kepada bait

Anda juga boleh menggunakan fungsi []byte() untuk menukar rentetan kepada jenis bait. Contohnya adalah seperti berikut:

package main

import "fmt"

func main() {
    s := "hello"
    b := []byte(s)
    fmt.Println(b)  // 输出为 [104 101 108 108 111]
}
  1. bait ditukar kepada int

Kita boleh menggunakan fungsi int() untuk menukar jenis bait kepada jenis integer. Contohnya adalah seperti berikut:

package main

import "fmt"

func main() {
    b := byte(255)
    i := int(b)
    fmt.Println(i)  // 输出为 255
}

Perlu diingat bahawa julat nilai jenis bait ialah 0~255 Nilai di luar julat ini akan menjana pengecualian masa jalan.

  1. int to byte

Kita boleh menggunakan fungsi byte() untuk menukar jenis integer kepada jenis byte. Contohnya adalah seperti berikut:

package main

import "fmt"

func main() {
    i := 255
    b := byte(i)
    fmt.Println(b)  // 输出为 255
}

Perlu diambil perhatian bahawa jika nilai jenis integer melebihi julat nilai jenis bait, hanya 8 bit yang lebih rendah akan diambil.

  1. Tukar tatasusunan bait kepada uint16

Di Golang, kita boleh menukar dengan menyambung dua elemen berturut-turut tatasusunan bait kepada jenis uint16. Contohnya adalah seperti berikut:

package main

import "fmt"

func main() {
    b := []byte{0x12, 0x34}
    u := uint16(b[0])<<8 + uint16(b[1])
    fmt.Println(u)  // 输出为 4660
}

Perlu diingatkan bahawa susunan bait (enddian besar atau endian kecil) perlu diberi perhatian semasa proses penukaran.

  1. Tukar uint16 kepada tatasusunan bait

Anda juga boleh menggunakan []jenis bait untuk menukar jenis uint16 kepada tatasusunan bait. Contohnya adalah seperti berikut:

package main

import "fmt"

func main() {
    u := uint16(4660)
    var b = make([]byte, 2)
    b[0] = byte(u >> 8)
    b[1] = byte(u)
    fmt.Println(b)  // 输出为 [18 52]
}

Perlu diingatkan bahawa proses penukaran juga perlu memberi perhatian kepada isu pesanan bait.

Ringkasan

Artikel ini memperkenalkan cara menukar jenis bait, meliputi penukaran antara bait dan rentetan, bait dan int, tatasusunan bait dan uint16. Dalam pembangunan sebenar, penukaran jenis bait akan sering berlaku Menguasai kaedah penukaran di atas boleh menjadikan pemprosesan dan pengiraan data lebih mudah.

Atas ialah kandungan terperinci penukaran bait golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:bahasa set golangArtikel seterusnya:bahasa set golang