Rumah > pembangunan bahagian belakang > Golang > Mengapa Ranging Melebihi Rentetan dalam Go Mengembalikan Rune, Manakala Pengindeksan Mengembalikan Bait?

Mengapa Ranging Melebihi Rentetan dalam Go Mengembalikan Rune, Manakala Pengindeksan Mengembalikan Bait?

Barbara Streisand
Lepaskan: 2024-12-27 20:12:32
asal
615 orang telah melayarinya

Why Does Ranging Over a String in Go Return Runes, While Indexing Returns Bytes?

Mengapa Julat Melebihi Rentetan Mengembalikan Rune, Bait mengikut Indeks

Menurut dokumentasi Go dan ujian kami sendiri, apabila berkisar pada rentetan, elemen yang diperoleh adalah daripada jenis rune, manakala pengindeksan ke dalam rentetan menggunakan str[index] menghasilkan bait.

The sebab teras bagi perbezaan ini berpunca daripada takrifan jenis rentetan Rentetan mewakili urutan bait, dan mengakses bait individu boleh dilakukan melalui pengindeksan.

Sebaliknya, klausa julat digunakan dalam untuk. kenyataan, Ia membenarkan melintasi titik kod Unicode dalam rentetan. Bermula pada indeks 0 bait, lelaran akan mengembalikan indeks bait pertama bagi setiap titik kod yang dikodkan UTF-8 dan nilai titik kod yang sepadan (jenis rune).

Jika anda ingin mengulangi bait dalam rentetan dan bukannya titik kod, terdapat beberapa pilihan:

  • Gunakan gelung untuk biasa untuk melelaran ke atas indeks dari 0 hingga len(s)-1 .
  • Gunakan untuk i, b := julat []bait(s) untuk menukar rentetan menjadi kepingan bait, dan kemudian lelaran ke atas bait.

Alternatif ini menyediakan akses terus kepada bait tanpa mengorbankan kebolehbacaan kod.

Atas ialah kandungan terperinci Mengapa Ranging Melebihi Rentetan dalam Go Mengembalikan Rune, Manakala Pengindeksan Mengembalikan Bait?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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 terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan