Crear objetos dinamicamente

msslobaton
22 de Marzo del 2010
Hola estoy haciendo un programa en el cual el usuario realiza una compra de un producto y almaceno la informacion en un arraylist , el problema surge cuando el usuario va a comprar mas productos necesito que se almacenen todos en el array cada vez que el digite. esta es la funcion que me crea el arraylist :


public void almacenaArticulos(String cod ,String Descripcion, float Valor){

compra=new ArrayList();
//creo un articulo llamado cafe



Articulo producto=new Articulo();

producto.setproducto(cod);
producto.setDescripcion(Descripcion);
producto.setValor(Valor);


compra.add(producto);
// agregando a la lista los objetos(Articulos)



}

pero hasta ahora solo almacena un dato , como hago para que se almacenen todos???,.

Nook
22 de Marzo del 2010
Justamente el problema lo tenes por que tratas todo dentro del mismo metodo, es decir sale del meotodo y esos array desaparecen entendeS?

deberias crear los array fuera del metodo...

Articulo producto=new Articulo();
compra=new ArrayList();

public void almacenaArticulos(String cod ,String Descripcion, float Valor){
//creo un articulo llamado cafe
producto.setproducto(cod);
producto.setDescripcion(Descripcion);
producto.setValor(Valor);
compra.add(producto);
// agregando a la lista los objetos(Articulos)
}

Justamente no ves lo demas items por que estas haciendo una instancia nueva del objeto cuando volves a llamar al metodo :D

Saludos