como puedo redimensionar un array?

ani
13 de Febrero del 2005
hola!

os cuento mi problema, tengo un array de Strings inicializado en 0, y mi idea es ir redimensionarlo, pero me da un error: ArrayIndexOutofBounds.

como puedo solucionarlo?

os escribo el codigo:

import java.io.*;
import java.lang.*;
import java.util.zip.*;

public class PrincipalHarto{
public static void main(String[] args)throws Exception{
String[] mizip=new String[0];
String texto;
texto="juan";
mizip=Harto.addElemento(mizip,texto);

String texto2="pepe";
mizip=Harto.addElemento(mizip,texto2);


for (int i=0;i<mizip.length;i++){

System.out.println(mizip[i]);
}
}
}

clase Harto.java

import java.io.*;
import java.lang.*;
import java.util.zip.*;

public class Harto{

public static String[] addElemento(String[]a, String elemento){
String[] aux=new String[a.length+1];
for (int x=0;x<a.length;x++){
aux[x]=a[x];
System.out.println(aux[x]);
}
aux[a.length+1]=elemento;
return aux;
}
}

gracias por vuestra ayuda.

Miguel
13 de Febrero del 2005
los arrays son estructuras estáticas de datos, es decir que su tamaño no puede variar.- en su lugar puedes emplear estructuras dinámicas de datos implementadas por java como puedan ser la clase LinkedList y Vector.

La excepciónque te da se debe a que estás intentando a acceder a una posición del array que no existe

saludos