ホームページ >バックエンド開発 >Golang >Golang を使用して文字列を数値に変換するためのヒント

Golang を使用して文字列を数値に変換するためのヒント

WBOY
WBOYオリジナル
2024-01-16 08:42:171426ブラウズ

Golang を使用して文字列を数値に変換するためのヒント

Golang で文字列から数値への変換手法を実装するには、特定のコード例が必要です。

Golang では、多くの場合、文字列を次のような対応する数値型に変換する必要があります。文字列で表される整数をint型に変換し、文字列で表される浮動小数点数をfloat型に変換します。この記事では、いくつかの一般的な文字列から数値への変換手法を紹介し、具体的なコード例を示します。

  1. strconv パッケージの Parse 一連の関数を使用する

Golang の strconv パッケージには、文字列を変換するための一連の関数が用意されています。文字列を整数に変換する場合は ParseInt 関数を使用でき、文字列を浮動小数点数に変換する場合は ParseFloat 関数を使用できます。これらの関数の具体的な使用方法は次のとおりです。

import (
    "fmt"
    "strconv"
)

func main() {
    // 字符串转换为整数
    str := "666"
    num, err := strconv.ParseInt(str, 10, 64)
    if err != nil {
        fmt.Println("转换失败:", err)
    } else {
        fmt.Println("转换结果:", num)
    }

    // 字符串转换为浮点数
    str := "3.14"
    num, err := strconv.ParseFloat(str, 64)
    if err != nil {
        fmt.Println("转换失败:", err)
    } else {
        fmt.Println("转换结果:", num)
    }
}

上記のコードでは、文字列「666」と「3.14」をそれぞれ整数と浮動小数点数に変換し、変換結果を出力します。 ParseInt 関数と ParseFloat 関数の 2 番目のパラメータは変換に使用される基数を示し、3 番目のパラメータは変換結果の桁数を示します。

  1. strconv パッケージで Atoi 関数と ParseFloat 関数を使用する

Parse 一連の関数に加えて、strconv パッケージには、変換専用の便利な Atoi 関数と ParseFloat 関数も提供されています。文字列 整数と浮動小数点数に変換します。これら 2 つの関数の使用法は次のとおりです。

import (
    "fmt"
    "strconv"
)

func main() {
    // 字符串转换为整数
    str := "999"
    num, err := strconv.Atoi(str)
    if err != nil {
        fmt.Println("转换失败:", err)
    } else {
        fmt.Println("转换结果:", num)
    }

    // 字符串转换为浮点数
    str := "2.718"
    num, err := strconv.ParseFloat(str, 64)
    if err != nil {
        fmt.Println("转换失败:", err)
    } else {
        fmt.Println("转换结果:", num)
    }
}

上記のコードでは、文字列「999」と「2.718」も整数と浮動小数点数に変換し、変換結果を出力します。ご覧のとおり、Atoi 関数は文字列を直接整数に変換しますが、ParseFloat 関数は前に紹介した Parse シリーズの関数と同じように使用されます。

  1. 数値型変換を備えた strconv パッケージの Parse シリーズ関数を使用する

上記の 2 つの方法は、文字列を固定桁の整数または浮動小数点数に変換するものです。 。文字列を int64 型またはその他の数字型に変換する必要がある場合は、まず文字列を標準の int 型または float 型に変換し、次に型変換を通じてターゲットの型に変換します。具体的なコード例は次のとおりです:

import (
    "fmt"
    "strconv"
)

func main() {
    // 字符串转换为int64类型
    str := "123456789"
    num64, err := strconv.ParseInt(str, 10, 64)
    if err != nil {
        fmt.Println("转换失败:", err)
    } else {
        num := int(num64)
        fmt.Println("转换结果:", num)
    }

    // 字符串转换为float32类型
    str := "3.14"
    num64, err := strconv.ParseFloat(str, 64)
    if err != nil {
        fmt.Println("转换失败:", err)
    } else {
        num := float32(num64)
        fmt.Println("转换结果:", num)
    }
}

上記のコードでは、文字列「123456789」を int64 型に変換し、再度 int 型に変換し、文字列「3.14」を float64 に変換します。型を入力して再度変換するとfloat32型になります。ご覧のとおり、さまざまな数字タイプの変換はこの方法で実現できます。

概要:

この記事では、Golang で文字列を数値に変換する手法を紹介し、具体的なコード例を示します。 Parse シリーズの関数、または strconv パッケージの Atoi/ParseFloat 関数を使用すると、文字列を整数または浮動小数点数に簡単に変換できます。変換するときは、基数と桁数の指定に注意し、変換中に発生する可能性のあるエラーに対処する必要があることに注意してください。また、変換結果を他のビット型に変換する必要がある場合は、型変換を行うことで実現できます。この記事が Golang 開発者に役立つことを願っています。

以上がGolang を使用して文字列を数値に変換するためのヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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