arreglos infinitos

Iniciado por brian_e, 8 Marzo 2009, 07:15 AM

0 Miembros y 1 Visitante están viendo este tema.

brian_e

Buenas:
En la universidad me pidieron hacer un programa que ingrese nombres y que se almacenen. La salida esta dada por una pregunta de continuar. He estado intentando solucionarlo con arreglos, pero necesitaria un arreglo infinito. Podria alguien darme una idea de como solucionar esto.

Por si no me explico bien... ingreso el nombre, pregunto si quiere ingresar otro y asi sucesivamente hasta que obtenga una respuesta negativa a ingresar otro. :-\

Esto se me habia ocurrido, pero no funciona.

    int i=1;
    int terminar=1;
    String[] nombre;
    Integer nota[]=new Integer[2];
    while (terminar==1)
    {
    System.out.print("Alumno:");
    java.io.BufferedReader leer = new java.io.BufferedReader(new java.io.InputStreamReader(System.in));
    nombre=new String[2];
nombre[i]=leer.readLine();
i++;
System.out.print("¿Desea ingresar otro 1=si/0=no?");
java.io.BufferedReader fin = new java.io.BufferedReader(new java.io.InputStreamReader(System.in));
terminar=Integer.parseInt(fin.readLine());
    }



Amerikano|Cls

Lo que sucede es que estos arreglos no son dinámicos, es decir que debes de darles un tamaño fijo y por eso una solución seria que trabajaras con arrayList, linkedList, o Vector ya que son dinamicos, es decir le puedes añadir y añadir hasta que te canses y no necesita de un tamaño fijo  ;).

Se declara así:

Código (java) [Seleccionar]
ArrayList<Tipo> lista = new ArrayList<tipo>();

Y para añadirle datos:

Código (java) [Seleccionar]
lista.add(objeto);

Y con esto la lista va tomando el tamaño que va quedando cada vez que se ingresa un dato, es decir que no necesitas darle un tamaño fijo.

Para mas info, puedes ver la documentación del ArrayList, LinkedList o Vector:

- http://java.sun.com/javase/6/docs/api/java/util/ArrayList.html
- http://java.sun.com/javase/6/docs/api/java/util/LinkedList.html
- http://java.sun.com/javase/6/docs/api/java/util/Vector.html.

salu2

amerik@no




Mi blog:
http://amerikanocls.blogspot.com

brian_e

muchas gracias, eso es exactamente lo que necesitaba...