Maison > développement back-end > Golang > le corps du texte

Conseils pour convertir des chaînes en nombres à l'aide de Golang

WBOY
Libérer: 2024-01-16 08:42:17
original
1374 Les gens l'ont consulté

Conseils pour convertir des chaînes en nombres à laide de Golang

Pour implémenter des techniques de conversion de chaîne en nombre dans Golang, des exemples de code spécifiques sont nécessaires

Dans Golang, il est souvent nécessaire de convertir des chaînes en types numériques correspondants, comme la conversion d'entiers représentés par des chaînes en types int. le nombre à virgule flottante représenté par la chaîne est converti en type float. Cet article présentera plusieurs techniques courantes de conversion de chaîne en nombre et fournira des exemples de code spécifiques.

  1. Utilisez la série de fonctions Parse dans le package strconv

Le package strconv de Golang fournit une série de fonctions pour convertir des chaînes. Lors de la conversion d'une chaîne en nombre entier, nous pouvons utiliser la fonction ParseInt ; lors de la conversion d'une chaîne en nombre à virgule flottante, nous pouvons utiliser la fonction ParseFloat. L'utilisation spécifique de ces fonctions est la suivante :

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)
    }
}
Copier après la connexion

Dans le code ci-dessus, nous convertissons respectivement les chaînes "666" et "3.14" en nombres entiers et en nombres à virgule flottante, et générons les résultats de la conversion. A noter que le deuxième paramètre des fonctions ParseInt et ParseFloat indique la base utilisée pour la conversion, et le troisième paramètre indique le nombre de chiffres dans le résultat de la conversion.

  1. Utilisez les fonctions Atoi et ParseFloat dans le package strconv

En plus de la série de fonctions Parse, le package strconv fournit également des fonctions Atoi et ParseFloat pratiques dédiées à la conversion de chaînes en entiers et en nombres à virgule flottante. L'utilisation de ces deux fonctions est la suivante :

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)
    }
}
Copier après la connexion

Dans le code ci-dessus, nous convertissons également les chaînes "999" et "2.718" en nombres entiers et en nombres à virgule flottante, et générons les résultats de la conversion. Comme vous pouvez le voir, la fonction Atoi convertit directement une chaîne en entier, tandis que la fonction ParseFloat est utilisée de la même manière que les fonctions de la série Parse introduites précédemment.

  1. Utilisez les fonctions de la série Parse dans le package strconv avec conversion de type de chiffres

Les deux méthodes ci-dessus consistent à convertir une chaîne en un nombre entier ou à virgule flottante avec un nombre fixe de chiffres. Si vous devez convertir une chaîne en type int64 ou en un autre type de chiffres, vous pouvez d'abord convertir la chaîne en type int ou float standard, puis la convertir en type cible via la conversion de type. Les exemples de code spécifiques sont les suivants :

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)
    }
}
Copier après la connexion

Dans le code ci-dessus, nous convertissons la chaîne "123456789" en type int puis à nouveau en type int, nous convertissons à nouveau la chaîne "3.14" en type float64 et à nouveau en type int ; type float32. Comme vous pouvez le constater, la conversion de différents types de chiffres peut être réalisée de cette manière.

Résumé :

Cet article présente les techniques de conversion de chaînes en nombres dans Golang et fournit des exemples de code spécifiques. En utilisant la série de fonctions Parse ou la fonction Atoi/ParseFloat dans le package strconv, nous pouvons facilement convertir des chaînes en entiers ou en nombres à virgule flottante. Il convient de noter que lors de la conversion, vous devez faire attention à spécifier la base et le nombre de chiffres, et gérer les erreurs possibles lors de la conversion. De plus, si le résultat de la conversion doit être converti en d'autres types de chiffres, cela peut être obtenu via une conversion de type. J'espère que cet article pourra être utile aux développeurs Golang.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!