Retroceder   Foros del Web > Programación para sitios web > Java y JSP

Respuesta
 
Herramientas Desplegado
Antiguo 09-ene-2008, 18:17   #1 (permalink)
RastonE ha deshabilitado el karma
 
Avatar de RastonE
 
Fecha de Ingreso: diciembre-2005
Ubicación: [ARG] [localhost]
Mensajes: 67
Enviar un mensaje por MSN a RastonE
Triste Problema con array...

Hola, como va?... Bueno les comento hace poco que empiezo con java y tengo un problema, que seguramente no va a ser demasiado complicado para uds...

La cosa es simple, estoy leyendo un archivo, con el siguiente formato
Nombre Apellido # Tipo # Direccion # Iva # Cuit
Logro leerlo y dividir las palabras, lo hago de esta forma,
palabra = linea.split("#");
y ahi voy pasando cada palabra a un constructor
Segun el tipo, osea particular o empresa, creo el objeto y los tengo que poner en un array de objetos de Cliente...

Mi problema y con el que me estoy volviendo loco es que me da el siguiente error:

Código:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
        at examen.Datos.cargarDatos(Datos.java:69)
        at examen.TestFacturacion.main(TestFacturacion.java:28)
Java Result: 1
Y no se como solucionarlo
Espero que me puedan dar una mano, cualquier otra cosa que vean que este mal me avisan por favor

Muchas gracias por leer (si llegaron aca)!!!
__________________
Solo se que no se nada

Última edición por RastonE; 10-ene-2008 a las 13:15.
RastonE está desconectado   Responder Citando
Antiguo 10-ene-2008, 00:23   #2 (permalink)
GreenEyed tiene algunos puntos positivos de karma
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.570
Re: Problema con array...

ArrayIndexOutOfBoundsException quiere decir que estas leyendo una posicion de un array que no existe. Por ejemplo si intentas leer la cuarta posicion de un array de 3 elementos.

En este caso, en la linea 69 de tu clase estas intentando leer la primera posicion de un array que parece estar vacio.

S!
GreenEyed está desconectado   Responder Citando
Antiguo 10-ene-2008, 10:48   #3 (permalink)
RastonE ha deshabilitado el karma
 
Avatar de RastonE
 
Fecha de Ingreso: diciembre-2005
Ubicación: [ARG] [localhost]
Mensajes: 67
Enviar un mensaje por MSN a RastonE
Re: Problema con array...

Si eso lo se, GreenEyed...Es lo que no entiendo! Yo le doy el tamaño de 15 lugares aca...

Código:
     String[] palabra;
        palabra = new String [num*5];
Y el error de la linea 69 es,

Código:
if(j == 3){
        direccion = (String)palabra[1];}
No entiendo por que :
__________________
Solo se que no se nada
RastonE está desconectado   Responder Citando
Antiguo 11-ene-2008, 01:13   #4 (permalink)
R4Y
R4Y ha deshabilitado el karma
 
Fecha de Ingreso: julio-2005
Mensajes: 7
Re: Problema con array...

No estoy seguro de esto pero creo que no deberias asignarle el tamaño como
lo haces, yo lo haria algo así:

String[] palabra;
palabra = new String [num*5];


de ahi quitas la segunda linea, es decir, no le indiques el tamaño ya que lo tomara automaticamente dependiendo del numero de palabras y solo dejas:

palabra = linea.split("#");

y verifica su tamaño antes de tratar de consultar un indice que no existe con:

palabra.length()

Saludos.

Raymundo León G.
R4Y está desconectado   Responder Citando
Antiguo 11-ene-2008, 02:25   #5 (permalink)
GreenEyed tiene algunos puntos positivos de karma
 
Fecha de Ingreso: octubre-2003
Mensajes: 2.570
Re: Problema con array...

Cita:
Iniciado por R4Y Ver Mensaje
No estoy seguro de esto pero creo que no deberias asignarle el tamaño como
lo haces, yo lo haria algo así:

String[] palabra;
palabra = new String [num*5];


de ahi quitas la segunda linea, es decir, no le indiques el tamaño ya que lo tomara automaticamente dependiendo del numero de palabras y solo dejas...
Si no le indicas el tamaño y no lo creas con el constructor, lo que obtendras es un NullPointerException, fijo. Los arrays en Java no crecen dinamicamente a medida que les añades elementos, es lo hacen las colecciones. Además, length es un atributo de los arrays, no un metodo, así que es palabra.length, sin los parentesis. Quizá te hayas confundido con List o Vector.

En cuanto al error original... si num es 0, el array tendra tamaño cero y saltara el error, por ejemplo.

S!
GreenEyed está desconectado   Responder Citando
Antiguo 11-ene-2008, 18:46   #6 (permalink)
RastonE ha deshabilitado el karma
 
Avatar de RastonE
 
Fecha de Ingreso: diciembre-2005
Ubicación: [ARG] [localhost]
Mensajes: 67
Enviar un mensaje por MSN a RastonE
Re: Problema con array...

GreenEyed, gracias por contestar, como decis tengo que declarar el tamaño del array si no seria imposible...

Ahora ya resolvi el problema! gracias por las respuesta. paso a explicar...
La funcion split lo que haces es crear un array a partir de un String segun una marca de corte por ej.

hola#como#estan?

si utilizo la funcion split("#") a ese String lo que obtendria seria un array de 3 posiciones con
[0]hola
[1]como
[2]estan?

yo estaba utilizando mal la funcion por eso me ocurria el NullPointerException, llama a una posicion del array que simplemente no existia por lo que mencione antes...

Espero que le sirva a alguien
Slds!
__________________
Solo se que no se nada
RastonE está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Desactivado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 12:48.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93