ホームページ  >  記事  >  バックエンド開発  >  golang関数の戻り値の型変換

golang関数の戻り値の型変換

WBOY
WBOYオリジナル
2024-04-23 14:42:01817ブラウズ

関数の戻り値の型変換には 2 つの方法があります。型アサーションは値が特定の型と互換性があるかどうかをチェックし、互換性がない場合はエラーを報告します。型変換は互換性をチェックせずに直接変換します。実際には、浮動小数点型を整数に変換したり、タプル内の整数を文字列に変換したりできます。

golang関数の戻り値の型変換

#Go 言語における関数の戻り値の型変換

Go 言語では関数の戻り値の型を利用できます

type Assertion または typeconversion を変換します。

型アサーション

型アサーションを使用して、値が特定の型と互換性があるかどうかを確認し、型に互換性がない場合は値を期待される型に変換します。エラーが発生します。

func GetValue() interface{} {
    return "Hello, world!"
}

func main() {
    value := GetValue()
    // 检查 value 是否为字符串类型
    if str, ok := value.(string); ok {
        fmt.Println(str) // 输出: Hello, world!
    }
}

型変換

値に互換性があるかどうかに関係なく、型変換を使用して値の型を期待される型に変換します。

func main() {
    var num float64 = 3.14
    // 将 float64 转换为 int
    numInt := int(num)
    fmt.Println(numInt) // 输出: 3
}

実用的なケース

次は、関数の戻り値の型を変換する方法を示す実際的なケースです:

func GetEmployeeInfo() (string, int) {
    return "John Doe", 30
}

func main() {
    name, age := GetEmployeeInfo()

    // 将 age 转换为 string 类型
    ageStr := strconv.Itoa(age)
    fmt.Println("Employee Name:", name)
    fmt.Println("Employee Age:", ageStr)
}

出力:

Employee Name: John Doe
Employee Age: 30

以上がgolang関数の戻り値の型変換の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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