Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Iniciar sesiónIniciar sesiónCrear cuentaCrear cuenta

Java - Como pasar de String a Integer

  Imprimir  
Vista:

Como pasar de String a Integer

Publicado por Gonzalo (2 intervenciones) el 28/01/2001 02:01:50
Soy un programador en Java muy, pero que muy novato y mi pregunta es muy estupida pero estoy atascado ¿Como puedo pasar de una variable tipo String a integer y viceversa?. En Visual Basic es con Val pero en Java... ¿ que palabra hay?.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Como pasar de String a Integer

Publicado por Jose (53 intervenciones) el 28/01/2001 16:18:24
Hola. Todos hemos sido muy novatos, y de alguna siempre seguiremos siendolos, así que
no te preocupes.

Para convertir a String puedes usar los métodos de clase String

static String valueOf(double d)
static String valueOf(float f)
static String valueOf(int i)
static String valueOf(long l)
static String valueOf(boolean b)
static String valueOf(char c)
static String valueOf(char[] data)
static String valueOf(char[] data, int offset, int count)
static String valueOf(Object obj)

Tambien, ya especificamente para int, puedes usar los siguientes metodos
de la clase Integer

static String toString(int i)
si quieres la representación del int en base 10
static String toString(int i, int b)
si quieres la representacion del int en una base especifica b

Para convertir un String a un int puedes usar los siguientes metodos de la clase Integer

static int parseInt(String s)
si s representa un entero en base 10
static int parseInt(String s, b)
si s representa un entero en base b

Por ejemplo

String stringNumero = String.valueOf(32);
String stringNumero2 = Integer.toString(32); //Equivalente a la anterior
int otroNumerillo = Integer.parseInt("32");

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Como pasar de String a Integer

Publicado por Luis Colorado (1 intervención) el 14/06/2008 19:41:28
Pero cuando el valor de la cadena no es un valor numerico me devuelve una excepcion.


String miStr="hi";

int a=Integer.parseInt(miStr);

eso no me funciona... que hago


Gracias de antemano
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:También se puede con los demás tipos numéricos

Publicado por Jose (53 intervenciones) el 28/01/2001 16:37:41
Puedes hacer lo mismo con los demás tipos primitivos

Para convertir a String

Byte.toString(byte n)
Short.toString(short n)
Integer.toString(int n)
Long.toString(long n)
Float.toString(float n)
Double.toString(double n)

Para convertir un String a un tipo numerico primitivo

Byte.parseByte(String s)
Short.parseShort(String s)
Integer.parseInt(String s)
Long.parseLong(String s)
Float.parseFloat(String s)
Double.parseDouble(String s)

Resumiendo. Para cualquier tipo numerico primitivo distinto de int

Tipo.toString( tipo n) ----->Convierte numero en String
Tipo.parseTipo( String s) ----->Convierte String en numerico tipo

La excepción es int

Integer.toString( tipo n)
Integer.parseInt( String s)
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Y los enteros puedes especificar la base

Publicado por Jose (53 intervenciones) el 28/01/2001 16:45:20
Para los tipos primitivos enteros puedes especificar la base a la hora de convertir desde cadenas

Byte.parseByte(String s, int base)
Short.parseShort(String s, int base)
Integer.parseInt(String s, int base)
Long.parseLong(String s, int base)

Y lo contrario sólo para int y long

Integer.toString(int i, int base)
Long.toString(long i, int base)

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Otra forma

Publicado por Pedro Pablo (11 intervenciones) el 30/01/2001 14:27:40
Hola!
La verdad es que la contestación es magnífica, a si es que casi me da corte meterme...
Para convertir un valor numérico a cadena, hay otra forma, bastante cómoda, aunque quizá más ineficiente. Es la siguiente:

int n = 32;
String s = "" + n;

Lo que haces con la orden "" + 32 es realizar una suma DE CADENAS, pues el primer operando es una cadena. El compilador automáticamente convierte n a cadena, según su tipo, a si te ahorras escribir lo de Integer.toString(n).
Además es independiente del tipo de n, de modo que si luego modificas el código para que n sea, por ejemplo, long, no tienes que modificar y poner Long.toString.

De todas formas quizá sea más ineficiente, pues realiza la concatenación. Aunque tal vez el compilador se dé cuenta de que el primer operando es la cadena vacía y no la haga... La verdad es que no lo sé.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Otra forma

Publicado por Jose (53 intervenciones) el 02/02/2001 19:43:41
¡Buen comentario Pedro Pablo!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar