Artículos de Tecnología > Programación

Convertir int a String en Java

Alex Felipe
Alex Felipe

Completé otro curso en Alura y aumenté mi puntaje:


String alumno = “Alex Felipe”; 
int puntos = 12000;

Para imprimir mi puntaje solo concatenar la variable alumno + puntos dentro de un sysout:


System.out.println(alumno + " - " + puntos);

Pero, ¿cómo podría hacer que el alumno y la puntuación fueran una única variable? ¡Es simple! Lo mismo, simplemente "convierte" toda la variable (int) a String:

String descripcion = alumno + " - " + puntos;

Pero ahora ingresé al instructor Guilherme Silveira y mira sus puntos:

> Guilherme Silveira - 1893769 

Mirando de cara, ¿cuál es el valor de este número? ¿Un millón ochocientos mil? ¿Dieciocho millones? ¿Ciento ochenta millones? Tendré que contar con mi dedo en la pantalla para saber el valor exacto, ¡muy molesto y seguro que me equivoco!

Para separar la puntuación por casas podemos usar la clase NumberFormat :


String alumno = "Guilherme Silveira"; 

int puntos = 1893769;

String descripcion = alumno + " - " + NumberFormat.getInstance().format(puntos); System.out.println(descripcion);

Resultado:

> Guilherme Silveira - 1,893,769

¡Excelente! El número fue formateado como se esperaba, pero en la máquina de João el resultado fue:

> Guilherme Silveira - 1,879,654

Espera un poco. ¿Depende de la máquina? Esto se debe a que getInstance devuelve un formateador basado en el lenguaje configurado en la máquina. Para informar una región específica, simplemente define una ubicación, un Locale.

En mi caso, quiero el idioma portugués.("pt"), con la variación del portugués brasileño("BR").


Locale brasil = new Locale("pt", "BR");

String descripcion = alumno + " - " + NumberFormat.getInstance(brasil).format(puntos); System.out.println(descripcion);

Resultado:

> Guilherme Silveira - 1.893.769 

Ahora tanto mi máquina como la de mi colega, o incluso la máquina de producción, imprimen el mismo resultado.

Cuando empezamos a programar, aprendemos a concatenar y parece suficiente ... pero incluso en una tarea sencilla es importante seguir 3 pasos:

Y si deseas profundizarte en front-end, aquí en Alura tenemos una formación front-end para que empieces de cero y te conviertas en un profesional superior.

Alex Felipe

Alex es un instructor y desarrollador con enfoque en Java, Kotlin, Android y Spring. Es un experto en Programación Orientada a Objetos, siempre con el objetivo de compartir las mejores prácticas y tendencias del mercado para el desarrollo de software con quienes están estudiando la materia. Trabajó durante 2 años como editor de contenido en el blog de Alura y hoy todavía escribe artículos técnicos sobre desarrollo.

Puedes leer también:

Artículos de Tecnología > Programación

En Alura encontrarás variados cursos sobre Programación. ¡Comienza ahora!

  • 101 cursos

    Cursos de Programación, Front End, Data Science, Innovación y Gestión.

  • Videos y actividades 100% en Español
  • Certificado de participación
  • Estudia las 24 horas, los 7 días de la semana
  • Foro para resolver tus dudas
  • Descuento de lanzamiento de 30%

Trimestral

Descuento de lanzamiento de 30%
  • 101 cursos

    Cursos de Programación, Front End, Data Science, Innovación y Gestión.

  • Videos y actividades 100% en Español
  • Certificado de participación
  • Estudia las 24 horas, los 7 días de la semana
  • Foro para resolver tus dudas
US$19,90
un pago de US$29,90 US$19,90
¡Quiero empezar a estudiar!

Paga en moneda local en los siguientes países

Semestral

Descuento de lanzamiento de 30%
  • 101 cursos

    Cursos de Programación, Front End, Data Science, Innovación y Gestión.

  • Videos y actividades 100% en Español
  • Certificado de participación
  • Estudia las 24 horas, los 7 días de la semana
  • Foro para resolver tus dudas
US$33,90
un pago de US$49,90 US$33,90
¡Quiero empezar a estudiar!

Paga en moneda local en los siguientes países

Acceso a todos los cursos
Estudia las 24 horas, dónde y cuándo quieras
Nuevos cursos cada semana