salve a tutti dovrei fare una classe che gestisca una lista di oggetti e ho fatto una cosa del genere
codice://classe catalogo public class Catalogo { private ArrayList<Item> catalogo = new ArrayList <Item>(); public void Catalogo(){ } public void addProdotto(Item item){ catalogo.add(item); } public void removeProdotto(Item item){ catalogo.remove(item); } public void MostraCatalogo(){ for(int i=0; i<catalogo.size();i++){ System.out.println(catalogo.get(i).GetNomeItem()); System.out.println(catalogo.get(i).GetCodItem()); } } }
codice://classe item public class Item { private String nomeprodotto; private int codice, disp, prezzo; public void Item(){ nomeprodotto=""; codice=0; disp=0; prezzo=0; } public void SetNomeItem(String nome){ this.nomeprodotto=nome; } public void SetCodItem(int codice){ this.codice=codice; } public void SetDispItem(int disp){ this.disp=disp; } public void SetPrezzoItem(int prezzo){ this.prezzo=prezzo; } public String GetNomeItem(){ return this.nomeprodotto; } public int GetCodItem(){ return this.codice; } public int GetDispItem(){ return this.disp; } public int GetPrezzoItem(){ return this.prezzo; } }
ma quando poi nel main vado a stampare gli oggetti li sovascrive non capisco dove sta l'errore e mi chiedo se ha senso creare quella classe catalogo con i metodi add essendo il metodo add integrato già nella classe ArrayList.codice://main public class Store { /** * @param args the command line arguments */ public static void main(String[] args) { //Grafica grafica = new Grafica(); //grafica.setVisible(true); Scanner scanner = new Scanner(System.in); Item item=new Item(); Catalogo catalogo = new Catalogo(); int i=0; while(i<3){ System.out.println("Inserisci nome articolo"); String s= scanner.next(); item.SetNomeItem(s); System.out.println("Inserisci codice articolo"); int c= scanner.nextInt(); item.SetCodItem(c); catalogo.addProdotto(item); catalogo.MostraCatalogo(); i++; } } }

Rispondi quotando
