¿Cómo convertir una string a un tipo entero en Golang?

Las strings en Golang son una secuencia de caracteres de ancho variable donde todos y cada uno de los caracteres están representados por uno o más bytes usando la codificación UTF-8. En el lenguaje Go, los enteros con y sin signo están disponibles en cuatro tamaños diferentes. Para convertir una string a un tipo entero en Golang, puede usar los siguientes métodos.

1. Función Atoi(): Atoi significa ASCII a entero y devuelve el resultado de ParseInt(s, 10, 0) convertido a tipo int.

Sintaxis: 

func Atoi(s string) (int, error)

Ejemplo: 

Go

// Go program to illustrate how to
// Convert string to the integer type
 
package main
 
import (
    "fmt"
    "strconv"
)
 
func main() {
 
    str1 := "123"
 
    // using ParseInt method
    int1, err := strconv.ParseInt(str1, 6, 12)
 
    fmt.Println(int1)
 
    // If the input string contains the integer
    // greater than base, get the zero value in return
    str2 := "123"
 
    int2, err := strconv.ParseInt(str2, 2, 32)
    fmt.Println(int2, err)
 
}

Producción: 

123
0 strconv.Atoi: parsing "12.3": invalid syntax

2. Función ParseInt(): ParseInt interpreta una string s en la base dada (0, 2 a 36) y el tamaño de bit (0 a 64) y devuelve el valor i correspondiente.

Sintaxis:  

func ParseInt(s string, base int, bitSize int) (i int64, err error)

Ejemplo: 

Go

// Go program to illustrate how to
// Convert string to the integer type
 
package main
 
import (
    "fmt"
    "strconv"
)
 
func main() {
 
    str1 := "123"
 
    // using ParseInt method
    int1, err := strconv.ParseInt(str1, 6, 12)
 
    fmt.Println(int1)
 
    // If the input string contains the integer
    // greater than base, get the zero value in return
    str2 := "123"
 
    int2, err := strconv.ParseInt(str2, 2, 32)
    fmt.Println(int2, err)
 
}

Producción: 

51
0 strconv.ParseInt: parsing "123": invalid syntax

Publicación traducida automáticamente

Artículo escrito por SHUBHAMSINGH10 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *