Menghadapi Ralat "rentetan dan bait jenis tidak sepadan" di Golang
Coretan kod yang disediakan menimbulkan ralat apabila cuba menggabungkan rentetan dan bait pada baris 11:
new_str = new_str + str[i + 1]
Ralat ini berlaku kerana pembolehubah str[i 1] adalah daripada jenis bait, iaitu nilai bait yang mewakili satu aksara, manakala pembolehubah new_str ialah rentetan jenis, yang merupakan urutan aksara .
Untuk menyelesaikan isu ini, penukaran eksplisit daripada bait kepada rentetan diperlukan. Ini boleh dicapai menggunakan fungsi string(), yang menukar nilai bait kepada rentetan aksara tunggal. Kod yang diperbetulkan akan kelihatan seperti ini:
new_str = new_str + string(str[i + 1])
Isu yang sama timbul pada baris 24, di mana ungkapan f(g(str)) str[0] cuba untuk menggabungkan rentetan dengan bait. Menggunakan pembetulan yang sama, kami menukar bait str[0] kepada rentetan:
return f(g(str)) + string(str[0])
Dengan pengubahsuaian ini, kod akan dijalankan tanpa ralat. Adalah penting untuk ambil perhatian bahawa dalam Go, penukaran jenis eksplisit diperlukan apabila bekerja dengan jenis data yang berbeza.
Atas ialah kandungan terperinci Mengapakah saya mendapat ralat \'rentetan dan bait jenis tidak sepadan\' dalam kod Golang saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!