数値の英語アルファベット表現
Go では、数値をアルファベット文字に変換する方法がいくつかあります。
ルーン変換
定数 'A' - 1 に数値を加算してルーンに変換します。たとえば、3 は 'C' になり、23 は 'W' になります。
<code class="go">import "fmt" func toChar(i int) rune { return rune('A' - 1 + i) } func main() { for _, i := range []int{1, 2, 23, 26} { fmt.Printf("%d %q\n", i, toChar(i)) } }</code>
文字列変換
アルファベット表現を文字列として取得するには、次を使用します。
<code class="go">func toCharStr(i int) string { return string('A' - 1 + i) } func main() { for _, i := range []int{1, 2, 23, 26} { fmt.Printf("%d \"%s\"\n", i, toCharStr(i)) } }</code>
キャッシュされた文字列変換
変換を繰り返す場合は、文字列を配列にキャッシュすることを検討してください。
<code class="go">var arr = [...]string{"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"} func toCharStrArr(i int) string { return arr[i-1] } func main() { for _, i := range []int{1, 2, 23, 26} { fmt.Printf("%d \"%s\"\n", i, toCharStrArr(i)) } }</code>
文字列定数スライス
もう 1 つの効率的なオプションは、定数文字列をスライスすることです:
<code class="go">const abc = "ABCDEFGHIJKLMNOPQRSTUVWXYZ" func toCharStrConst(i int) string { return abc[i-1 : i] } func main() { for _, i := range []int{1, 2, 23, 26} { fmt.Printf("%d \"%s\"\n", i, toCharStrConst(i)) } }</code>
以上がGo で数字をアルファベット文字として表すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。