中級 › len(s)がUTF-8のバイト数を返し文字数と一致しない › パターン2
len(s)がUTF-8のバイト数を返し文字数と一致しない
Goの文字列はUTF-8のバイト列として保持されており、len(s)は文字数ではなくバイト数を返します。
1 package main 2 3 import "fmt" 4 5 func main() { 6 s := "こんにちは" 7 fmt.Println(______________) ^ 8 }
出力: 15文字数としては5のはず
空欄を埋めて実行を通す
5文字のひらがなも同様に1文字3バイトなので、len(s)は見た目の文字数の3倍になります。
次の問題