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

Declaracion de variable

Estas en el tema de Declaracion de variable en el foro de Java en Foros del Web. Hola, Tengo declarada una variable de esta forma: Object[] params = new Object[]{"dfdf","dfdf","dfdf"} y quiero sacar por pantalla params[0] asi if (params[0]==null){ System.out.println("el resultado es ...
  #1 (permalink)  
Antiguo 10/09/2007, 01:23
 
Fecha de Ingreso: agosto-2007
Mensajes: 63
Antigüedad: 16 años, 8 meses
Puntos: 0
Declaracion de variable

Hola,

Tengo declarada una variable de esta forma:

Object[] params = new Object[]{"dfdf","dfdf","dfdf"}

y quiero sacar por pantalla params[0] asi

if (params[0]==null){
System.out.println("el resultado es vacio");
}
else{
System.out.println(params[0]);
}

pero se me queja con el params[0] y me sale el siguiente error:
java.lang.ArrayIndexOutOfBoundsException.
¿Por qué puede ser?

Muchas gracias
  #2 (permalink)  
Antiguo 10/09/2007, 01:54
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Re: Declaracion de variable

Código:
    Object[] params = new Object[]{"dfdf","dfdf","dfdf"};
    System.err.println("params[0]: " + params[0]);
A mi me devuelve:
Cita:
params[0]: dfdf
Si la tienes declarada así, no te puede dar ese error. Te daría ese error si lo tuvieras como "new Object[0]", por ejemplo.

S!
  #3 (permalink)  
Antiguo 10/09/2007, 02:59
 
Fecha de Ingreso: agosto-2007
Mensajes: 63
Antigüedad: 16 años, 8 meses
Puntos: 0
Re: Declaracion de variable

Hola,

Tenias razon porque tenia un new declarado. Aun asi, haciendo pruebas no entiendo porque si tengo una componente vacia no me imprime el mensaje de No hay resultado y me salta la excepcion ArrayIndexOutOfBoundsException en:

Código:
if (params[6]==null){
    	System.out.println("No hay resultado");
    	}
    	else {
    		System.out.println(params[6]);
    	}
Estando la componente 6 vacia
  #4 (permalink)  
Antiguo 10/09/2007, 04:00
 
Fecha de Ingreso: octubre-2003
Mensajes: 3.578
Antigüedad: 20 años, 6 meses
Puntos: 51
Re: Declaracion de variable

Por que acceder a un componente que no existe es un error. El problema es que params[6] no es que sea o no distinto de null, es que no existe y solo puedes acceder a componentes que existan.

O sea, no es lo mismo que algo que existe sea igual a null, que que algo no exista. Si en vez de un array, fuera un objeto, es como si hicieras....

if(arrayPos6.getValue()==null)
{
...
}

y arrayPos6 es igual a null. Resultado -> NullPointerException. Jugando con arrays, el equivalente es una ArrayIndexOutOfBoundsException.

S!
  #5 (permalink)  
Antiguo 10/09/2007, 05:24
 
Fecha de Ingreso: julio-2006
Mensajes: 206
Antigüedad: 17 años, 9 meses
Puntos: 2
Re: Declaracion de variable

Me parece q el array esta mal declarado. Hecha un vistazo aqui :

http://www.ulpgc.es/otros/tutoriales...p1/progra.html
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 16:08.