Maison >développement back-end >Golang >Comment convertir une chaîne en type int dans Golang

Comment convertir une chaîne en type int dans Golang

PHPz
PHPzoriginal
2023-03-22 14:23:534355parcourir

En langage Go, la conversion d'une chaîne en int est une opération courante. Lorsque nous devons convertir une chaîne en type entier, nous pouvons le faire en utilisant les fonctions fournies dans le package strconv. Dans cet article, nous allons parcourir un exemple de code pour détailler comment convertir une chaîne en type entier à l'aide des fonctions du package strconv.

  1. strconv.Atoi

La fonction Atoi du package strconv peut convertir des chaînes en types int. Voici un exemple de code pour la conversion de chaîne à l'aide de la fonction Atoi :

package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "123"
    i, err := strconv.Atoi(str)
    if err != nil {
        fmt.Println("转换失败")
    } else {
        fmt.Println(i)
    }
}

Ce code définit d'abord une variable de chaîne str, puis nous appelons la fonction Atoi dans le package strconv pour convertir la chaîne en un type entier. Si la conversion réussit, la fonction Atoi renverra une valeur de type int. Si la conversion échoue, la fonction renvoie un objet d'erreur. Dans l'exemple de code, nous utilisons une instruction if pour déterminer si la conversion réussit et si elle échoue, le message d'erreur correspondant est généré.

  1. strconv.ParseInt

La fonction ParseInt peut convertir une chaîne en type int64. Voici un exemple de code pour la conversion de chaîne à l'aide de la fonction ParseInt :

package main

import (
    "fmt"
    "strconv"
)

func main() {
    str := "123"
    i, err := strconv.ParseInt(str, 10, 64)
    if err != nil {
        fmt.Println("转换失败")
    } else {
        fmt.Println(i)
    }
}

Dans ce code, nous utilisons la fonction ParseInt pour convertir une chaîne au type int64. La fonction accepte trois paramètres : la chaîne à convertir, la base à convertir (10 représente décimal) et le type de retour attendu (int64 dans l'exemple). Si la conversion réussit, la fonction renvoie une valeur de type int64. Si la conversion échoue, un objet d'erreur sera renvoyé.

  1. Comparaison de strconv.Atoi et strconv.ParseInt

Nous avons introduit deux méthodes de conversion de chaînes en types entiers, alors quelles sont les différences entre ces deux méthodes ?

  • Type de retour

La fonction Atoi convertit la chaîne en type int, tandis que la fonction ParseInt convertit la chaîne en type int64.

  • Limitation de plage

Étant donné que la plage du type int est plus petite que le type int64, vous devez faire attention à savoir si l'entier représenté par la chaîne dépasse la plage du type int lorsque vous utilisez la fonction Atoi.

  • Gestion des erreurs

La fonction Atoi renverra un objet d'erreur lorsque la conversion échoue, tandis que la fonction ParseInt nous oblige à déterminer manuellement si la conversion est réussie.

  1. Résumé

Dans cet article, nous avons montré comment convertir une chaîne en type entier à l'aide des fonctions du package strconv. Que vous utilisiez la fonction Atoi ou la fonction ParseInt, elles ont leurs propres caractéristiques et champ d'application. Vous devez choisir la méthode appropriée en fonction du scénario spécifique. Lors de l'utilisation, nous devons faire attention à la plage de représentation et à la gestion des erreurs des chaînes. J'espère que cet article pourra vous aider à mieux comprendre comment convertir entre les types chaîne et entiers en langage Go.

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!

Déclaration:
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