Foros del Web » Programación para mayores de 30 ;) » Java »

Dudas compilando JAVA

Estas en el tema de Dudas compilando JAVA en el foro de Java en Foros del Web. Hola a todos, tengo un programa java, pero a la hora de compilar me da 2 errores que no logro solucionar: El primero---> int i=(Integer)(cadena.charAt(h+1)); ...
  #1 (permalink)  
Antiguo 16/11/2005, 16:17
 
Fecha de Ingreso: mayo-2005
Ubicación: España
Mensajes: 279
Antigüedad: 19 años
Puntos: 2
Exclamación Dudas compilando JAVA

Hola a todos, tengo un programa java, pero a la hora de compilar me da 2 errores que no logro solucionar:

El primero--->
int i=(Integer)(cadena.charAt(h+1)); Es decir convertir el caracter en la pos h+1 de cadena a un int. Me pone error tipos incompatibles.

El segundo--->
StringTokenizer tk2=new StringTokenizer(cad2," "); Quiero un StringTokenizer que me separe las palabras de cad2 por espacios. Me da un error: cannot resolve symbol class StringTokenizer (me lo da 2 veces - las 2 veces que aparece StringTokenizer)

Si pueden ayudarme, Muchas gracias
  #2 (permalink)  
Antiguo 16/11/2005, 16:29
Avatar de kittya  
Fecha de Ingreso: abril-2004
Mensajes: 260
Antigüedad: 20 años
Puntos: 0
import java.util.*;

hay esta la clase StringTokenizer

intenta así

int i=Integer.parseInt(un String );
__________________
necesito una firma
  #3 (permalink)  
Antiguo 16/11/2005, 21:38
Avatar de TolaWare
Colaborador
 
Fecha de Ingreso: julio-2005
Mensajes: 4.352
Antigüedad: 18 años, 10 meses
Puntos: 24
el problema es que "int" es un tipo de datos primitivo en Java, e Integer es lo que se llama Wrapper, y es una clase que pertenece a la API de java, por lo que cuando recuperas el caracter con el metodo charAt() y lo casteas con (Integer), el resultado es un objeto Integer que no puede ser guardado en una variable de tipo int. El cast que deberias colocar es (int), o declarar la variable "i" como de tipo Integer.
Espero haber sido claro.
__________________
http://blog.tolaware.com.ar -> Blog de Java, Ruby y Linux
  #4 (permalink)  
Antiguo 16/11/2005, 23:46
Usuario no validado
 
Fecha de Ingreso: octubre-2005
Ubicación: En mi casita
Mensajes: 100
Antigüedad: 18 años, 6 meses
Puntos: 0
Mira cuando vas a utilizar envolventes debes de saberlas utilizar al igual que los castings, los castings solo se pueden realizar bien entre Objetos o solo entre datos primitivos con coherencia, no vás a trasnformar un String "ASDF" a un Integer, sería algo ilógico, pero bueno, para realizar la asignación int que tu posees hay un método del Integer que dá el valor int...

Código:
  int i=((Integer)(cadena.charAt(h+1))).intValue();
cualquier cosa si no sale me avisas...

ciao...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:41.