De int a String
Para realizar la conversión de números enteros a cadena podemos utilizar el método estático toString de la clase Integer,de la siguiente forma:
int i = 12; String s = Integer.toString(i);
De String a int
Para realizar la conversión de una cadena a un podemos utilizar el método estático parseInt de la clase Integer,de la siguiente forma:
String s = "38"; int i = Integer.parseInt(s);
Se puede llegar a producir una excepción del tipo NumberFormatException si la cadena pasada contiene basura (espacios en blanco, caracteres, simbolos de puntuación, etc), caso en el cual deberá limpiarse antes de convertirse:
try {
String s = "38.0";
int i = Integer.parseInt(s);
} catch (NumberFormatException nfe) {
System.err.println("Error de conversion de " + b + ": " + nfe.getMessage());
}
En este caso imprimirá por la consola:
Error de conversion: For input string: “38.0″
Espero les sirva
Saludos
Filed under: Java | 4 Comments
Tags: cadena, int, Integer, Java, String
Otra posibilidad para convertir de int a String es:
Saludos,
Pablo
@Pablo tal como dices es otra posibilidad. Ahí el que juega un papel importante es el compilador, acá hay algo más del tema para los más curiosos.
Resumiendo un poco, el compilador toma la linea:
y la convierte en:
ya que tanto “” como 123 son constantes.
Otro caso sería si el compilador encuentra:
como el compilador no puede determinar que valor tendrá i, lo que hace es convertir la instruccion en:
int i = 123; String s = (new StringBuilder()).append("").append(i).toString();donde append(i) convierte el entero a String (de forma similar a String.valueOf(i)) y lo agrega al StringBuilder creado.
Saludos y gracias
Vale la aclaración.
Otra forma de convertir números a cadena, útil cuando vaya a ser incluído en un mensaje, es usar las funciones de formato. Especialmente las nuevas, como printf(), que son muy cómodas y prácticas.
Por ej.:
String s = "38"; int i = Integer.parseInt(s); System.out.printf("El valor de 'i' es %d", i);Que mostrará:
El valor de ‘i’ es 38
Slds.-
Pablo