Sobes.tech
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.