Apakah itu Rune in Go?
Go menggunakan istilah "rune" sebagai alias untuk jenis data integer int32. Ini agak mengelirukan kerana integer biasanya tidak digunakan untuk mewakili aksara. Walau bagaimanapun, dalam Go, rune memainkan peranan penting dalam manipulasi aksara.
Rune Literal
Run literal dalam Go diwakili dengan melampirkan satu aksara dalam petikan tunggal, seperti sebagai 'a' atau 'z'. Literal ini sebenarnya mewakili titik kod Unicode. Sebagai contoh, 'a' sepadan dengan titik kod 97.
Manipulasi Aksara Berasaskan Rune
Fungsi SwapRune yang disediakan mengambil rune sebagai input dan menukar kesnya. Ia menggunakan pernyataan suis untuk mengendalikan dua kes: menukar aksara huruf kecil kepada huruf besar dan sebaliknya.
Syarat dalam pernyataan suis, seperti 'a' <= r && r <= 'z', bandingkan nilai rune dengan titik kod Unicode untuk 'a' dan 'z'. Jika rune berada dalam julat ini, ia dianggap sebagai aksara huruf kecil dan mempunyai titik kodnya dilaraskan sewajarnya untuk menghasilkan versi huruf besar.
Manipulasi Rune dan Rentetan
The SwapCase fungsi menunjukkan penggunaan rune dalam manipulasi rentetan. Ia menggunakan rentetan.Fungsi Peta untuk menggunakan fungsi SwapRune pada setiap rune dalam rentetan input, dengan berkesan menukar kes semua aksara.
Byte vs. Rune
Walaupun rune digunakan untuk mewakili titik kod Unicode, bait mewakili bait individu dalam urutan bait. Dalam ASCII, di mana setiap aksara diwakili oleh satu bait, rune dan bait boleh ditukar ganti. Walau bagaimanapun, dalam Unicode, yang menyokong julat aksara yang lebih luas, satu aksara Unicode boleh dikodkan menggunakan berbilang bait. Dalam situasi ini, rune memberikan perwakilan aksara yang lebih tepat daripada bait.
Atas ialah kandungan terperinci Apakah Runes dan Bagaimanakah Ia Berbeza daripada Bytes dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!