Junior
¿Cómo convertir una cadena en un número entero y viceversa?
sobes.tech AI
Respuesta de la IA
Para convertir una cadena en un número entero, se utiliza el paquete strconv, la función Atoi o ParseInt. Para convertir un número entero en una cadena, también se usa el paquete strconv, la función Itoa o FormatInt.
import "strconv"
func main() {
// Conversión de cadena a número
strNum := "123"
intNum, err := strconv.Atoi(strNum) // Atoi devuelve int y error
if err != nil {
// manejo del error
}
intNum64, err := strconv.ParseInt("456", 10, 64) // ParseInt devuelve int64, base, tamaño en bits
if err != nil {
// manejo del error
}
// Conversión de número a cadena
numToStr := 789
strResult := strconv.Itoa(numToStr) // Itoa devuelve string
num64ToStr := int64(1011)
strResult64 := strconv.FormatInt(num64ToStr, 10) // FormatInt devuelve string, base
}
Funciones principales:
| Función | Descripción | Valor devuelto | Paquete |
|---|---|---|---|
Atoi(s string) |
Convierte una cadena en un número entero decimal. | (int, error) |
strconv |
ParseInt(s string, base int, bitSize int) |
Convierte una cadena en un número entero de la base y tamaño en bits especificados. | (int64, error) |
strconv |
Itoa(i int) |
Convierte un número entero decimal en una cadena. | string |
strconv |
FormatInt(i int64, base int) |
Convierte un número entero de tamaño en bits en una cadena con la base especificada. | string |
strconv |
Atoi es una abreviatura conveniente para ParseInt(s, 10, 0) con conversión del resultado a int. Itoa es una abreviatura para FormatInt(int64(i), 10).
Al convertir una cadena en un número, es importante manejar los errores, ya que la cadena puede contener caracteres no numéricos o exceder el tamaño del tipo de datos.