ホームページ > バックエンド開発 > Golang > Golang で数値を文字として表すにはどうすればよいですか?

Golang で数値を文字として表すにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-11-10 15:22:02
オリジナル
240 人が閲覧しました

How do you represent a number as a letter in Golang?

Golang での数値のアルファベット表現

概要:

数値をその数値に変換する対応するアルファベット表現は、さまざまなシナリオで役立つタスクとなります。この記事では、Go プログラミング言語でこの変換を効率的に実行する複数の方法を検討します。

ルーン文字への番号 (文字):

最も簡単な方法は、番号を追加することです。 「A」から 1 を引いた ASCII 値。これにより、アルファベットに対応するルーンが得られます。たとえば、「A」に 1 を加算すると「A」が生成され、2 を加算すると「B」が生成されます。

サンプル コード:

<code class="go">import "fmt"

func toChar(i int) rune {
    return rune('A' - 1 + i)
}

func main() {
    fmt.Printf("%d %q\n", 1, toChar(1))
    fmt.Printf("%d %q\n", 2, toChar(2))
    fmt.Printf("%d %q\n", 23, toChar(23))
}</code>
ログイン後にコピー

数値から文字列へ:

文字列表現が必要な場合は、前のメソッドで返されたルーンを文字列に変換するだけです。

サンプル コード:

<code class="go">import "fmt"

func toCharStr(i int) string {
    return string('A' - 1 + i)
}

func main() {
    fmt.Printf("%d %q\n", 1, toCharStr(1))
    fmt.Printf("%d %q\n", 2, toCharStr(2))
    fmt.Printf("%d %q\n", 23, toCharStr(23))
}</code>
ログイン後にコピー

Number to String (Cached):

変換を頻繁に実行する必要がある場合は、文字列をキャッシュする方が効率的です。これは、すべてのアルファベット文字の配列を保存することで実行できます。

サンプル コード:

<code class="go">import "fmt"

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() {
    fmt.Printf("%d %q\n", 1, toCharStrArr(1))
    fmt.Printf("%d %q\n", 2, toCharStrArr(2))
    fmt.Printf("%d %q\n", 23, toCharStrArr(23))
}</code>
ログイン後にコピー

数値を文字列に変換 (文字列定数をスライス):

もう 1 つの興味深い解決策には、定数文字列をスライスして目的の文字を取得します。

サンプルコード:

<code class="go">import "fmt"

const abc = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"

func toCharStrConst(i int) string {
    return abc[i-1 : i]
}

func main() {
    fmt.Printf("%d %q\n", 1, toCharStrConst(1))
    fmt.Printf("%d %q\n", 2, toCharStrConst(2))
    fmt.Printf("%d %q\n", 23, toCharStrConst(23))
}</code>
ログイン後にコピー

以上がGolang で数値を文字として表すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート