Rumah  >  Artikel  >  pembangunan bahagian belakang  >  golang rune 转string

golang rune 转string

WBOY
WBOYasal
2023-05-13 10:24:371637semak imbas

Apabila pengaturcaraan dalam bahasa Go, kita selalunya perlu menukar pengekodan Unikod. Satu penukaran biasa ialah menukar jenis rune kepada jenis rentetan. Dalam bahasa Go, jenis rune ialah set aksara Unicode dengan pengekodan aksara UTF-8, manakala jenis rentetan terdiri daripada satu siri aksara Unicode. Artikel ini akan memperkenalkan cara menukar jenis rune kepada jenis rentetan.

1. Jenis Rune dan jenis rentetan

Dalam bahasa Go, jenis rune ialah jenis integer 32-bit, digunakan untuk mewakili aksara Unicode. Biasanya, kami menggunakan petikan tunggal untuk mewakili jenis rune. Sebagai contoh, aksara 'a', 'anda' dan '?' dalam petikan tunggal boleh dinyatakan sebagai jenis rune. Dalam bahasa Go, kita boleh menggunakan gelung untuk julat untuk melintasi rentetan, dan setiap jenis rune mewakili aksara Unicode. Contohnya:

str := "你好,世界!"
for i, r := range str {
    fmt.Printf("字符 %c 的Unicode编码是:%U
", r, r)
}

Hasil output ialah:

字符 你 的Unicode编码是:U+4F60
字符 好 的Unicode编码是:U+597D
字符 , 的Unicode编码是:U+FF0C
字符 世 的Unicode编码是:U+4E16
字符 界 的Unicode编码是:U+754C
字符 ! 的Unicode编码是:U+FF01

Seperti yang anda lihat, setiap jenis rune mewakili aksara Unicode, jenisnya int32, dan jenisnya adalah output dalam bentuk perenambelasan Unicode pengekodan .

Jenis rentetan terdiri daripada satu siri aksara Unikod. Dalam bahasa Go, kita juga boleh menggunakan gelung untuk julat untuk melintasi rentetan untuk mendapatkan setiap aksara Unicode. Contohnya:

str := "你好,世界!"
for i, c := range str {
    fmt.Printf("第%d个字符是:%c
", i, c)
}

Hasil keluarannya ialah:

第0个字符是:你
第1个字符是:好
第2个字符是:,
第3个字符是:世
第4个字符是:界
第5个字符是:!

Kita dapat melihat bahawa setiap jenis rentetan ialah rentetan yang terdiri daripada aksara Unikod, dan setiap Unikod boleh diperoleh secara berasingan melalui gelung jarak jauh watak.

2. Tukar jenis rune kepada jenis rentetan

Untuk menukar jenis rune kepada jenis rentetan, kita boleh menggunakan fungsi rentetan() terbina dalam. Sebagai contoh, contoh berikut menukar jenis rune kepada jenis rentetan:

var r rune = 'a'
str := string(r)
fmt.Println(str)  //输出:a

Di sini kita mentakrifkan pembolehubah jenis rune r, yang nilainya ialah pengekodan Unikod bagi aksara 'a' dan menukarkannya kepada rentetan taip , dapatkan rentetan "a". Ambil perhatian bahawa di sini kita menggunakan fungsi string() untuk menukar jenis rune kepada jenis rentetan.

Jika kita perlu menukar jujukan yang terdiri daripada berbilang jenis rune kepada jenis rentetan, kita boleh menggunakan operator penyambungan bahasa go +. Contohnya:

var runes []rune = []rune{'你', '好', ',', '世', '界', '!'}
str := string(runes)
fmt.Println(str)  //输出:你好,世界!

Di sini kami mentakrifkan rune hirisan yang mengandungi berbilang jenis rune dan menggunakan fungsi string() untuk menukarnya kepada jenis rentetan untuk mendapatkan rentetan "Hello, world!".

3. Ringkasan

Artikel ini memperkenalkan cara menukar jenis rune kepada jenis rentetan. Dalam bahasa Go, jenis rune mewakili aksara Unicode, manakala jenis rentetan terdiri daripada berbilang aksara Unicode. Melalui fungsi string() terbina dalam, kita boleh menukar jenis rune kepada jenis rentetan. Dalam pengaturcaraan sebenar, kita boleh menukar urutan jenis rune kepada jenis rentetan seperti yang diperlukan untuk merealisasikan fungsi membina rentetan.

Atas ialah kandungan terperinci golang rune 转string. 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:Cara memanggil Golang TiDBArtikel seterusnya:Cara memanggil Golang TiDB