ホームページ  >  記事  >  バックエンド開発  >  Golang における文字列と数値間の変換方法の詳細な分析

Golang における文字列と数値間の変換方法の詳細な分析

PHPz
PHPzオリジナル
2024-01-16 09:18:191221ブラウズ

Golang における文字列と数値間の変換方法の詳細な分析

Golang では、文字列と数値の間の変換は非常に一般的な操作です。この記事では、Golangにおける文字列と数値の相互変換方法と、具体的なコード例を詳しく紹介します。

1. 文字列を数値に変換する

Golang では、文字列を数値に変換する方法として以下の方法があります:

  1. strconv パッケージの () 関数の Atoi を使用します。

Atoi() 関数は、文字列を int 型の数値に変換できます。サンプル コードは次のとおりです。

package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "123"
    num, err := strconv.Atoi(str)
    if err != nil {
        fmt.Println("字符串转换为数字失败")
    } else {
        fmt.Printf("转换后的数字是%d,类型是%T", num, num)
    }
}

実行結果:

转换后的数字是123,类型是int
  1. strconv パッケージの ParseInt() 関数を使用します。

ParseInt()文字列を任意の数値に変換できる関数です。サンプル コードは次のとおりです。

package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "101"
    num, err := strconv.ParseInt(str, 2, 0)
    if err != nil {
        fmt.Println("字符串转换为数字失败")
    } else {
        fmt.Printf("转换后的数字是%d,类型是%T", num, num)
    }
}

実行結果:

转换后的数字是5,类型是int64
  1. fmt パッケージの Scanf() 関数を使用します

Scanf()関数は入力文字を変換できます。文字列を数値に変換します。サンプルコードは以下のとおりです。

package main

import (
    "fmt"
)

func main() {
    var num int
    fmt.Printf("请输入一个数字:")
    _, err := fmt.Scanf("%d", &num)
    if err != nil {
        fmt.Println("输入错误")
    } else {
        fmt.Printf("转换后的数字是%d,类型是%T", num, num)
    }
}

実行結果:

请输入一个数字:123
转换后的数字是123,类型是int

2. 数値を文字列に変換する

Golang では、数値を文字列に変換する次のメソッドがあります。

  1. strconv パッケージのitoa() 関数を使用する

Itoa() 関数は、int 型の数値を文字列に変換できます。サンプル コードは次のとおりです。

package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 123
    str := strconv.Itoa(num)
    fmt.Printf("转换后的字符串是%s,类型是%T", str, str)
}

実行結果:

转换后的字符串是123,类型是string
  1. fmt パッケージの Sprintf() 関数を使用します

Sprintf()関数は、任意のタイプの変換データを文字列に変換できます。サンプル コードは次のとおりです。

package main

import (
    "fmt"
)

func main() {
    num := 123
    str := fmt.Sprintf("%d", num)
    fmt.Printf("转换后的字符串是%s,类型是%T", str, str)
}

実行結果:

转换后的字符串是123,类型是string
  1. strconv パッケージの FormatInt() 関数を使用します

FormatInt()関数は、任意の基数を「数値を文字列に変換」に変換できます。サンプルコードは以下の通りです:

package main

import (
    "fmt"
    "strconv"
)

func main() {
    num := 5
    str := strconv.FormatInt(int64(num), 2)
    fmt.Printf("转换后的字符串是%s,类型是%T", str, str)
}

実行結果:

转换后的字符串是101,类型是string

まとめ:

以上はGolangにおける文字列と数値の相互変換方法について詳しく説明しましたが、および具体的なコード例を示します。実際の開発では、適切な変換方法を選択することでコードの効率が向上しますが、変換処理中に発生する可能性のあるエラーにも注意する必要があります。

以上がGolang における文字列と数値間の変換方法の詳細な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。