Salve a tutti ragazzi e complimenti per il forum!!....Praticamente ho un problema con il seguente esercizio :
Definire una classe Prodotto che includa soltanto:
le variabili istanza marca, nome_prod, prezzo_unitario, quantità
la definizione del costruttore che inizializza le variabili istanza
un metodo toString che restituisce una stringa contenente il nome del prodotto la marca e la quantità, separati da uno spazio;
un metodo getMarca che restituisce una stringa contenente la marca dell’oggetto su cui è invocato;
un metodo getNome che restituisce il nome;
un metodo getPrezzo che restituisce il prezzo del prodotto;
un metodo aumentaPrezzo, che aumenta il prezzo del 2%
Un metodo incrementaQuantità, che incrementa di 1 le unità di un prodotto.
Costruire una classe Spesa popolata di oggetti della classe prodotto. Il metodo che aggiunge un prodotto verifica se il prodotto è già presente e in tal caso ne incrementa solo la quantità. Ha un metodo per stampare i prodotti contenuti nella spesa.
Scrivere un programma che chiede all’utente di inserire i dati dei prodotti della spesa effettuata e calcola il costo complessivo della spesa. Aumenta il prezzo di tutti i prodotti di marca “Cirio”. Calcola nuovamente il totale. Stampa i prodotti acquistati.
Allora la classe Prodotto l'ho realizzata e non ci sono problemi a riguardo. Le difficoltà sono sulla seconda parte (quella in rosso). Ecco il codice realizzato da me finora :
Il mio problema riguarda la realizzazione del metodo aggiungiProdotto...ho provato una serie svariata di modi, ma non sono riuscito. Qualcuno è così gentile da darmi una mano?? Vi ringrazio in anticipocodice:public class Prodotto { private String marca; private String nome_prod; private double prezzo_unitario; private int quantità; public Prodotto(String marca,String nome_prod,int prezzo_unitario,int quantità) { this.marca = marca; this.nome_prod = nome_prod; this.prezzo_unitario = prezzo_unitario; this.quantità = quantità; } public String toString() { return nome_prod+" "+marca+" "+quantità; } public String getMarca() { return marca; } public String getNome() { return nome_prod; } public double getPrezzo() { return prezzo_unitario; } public int getQuantità() { return quantità; } public void aumentaPrezzo() { prezzo_unitario = (prezzo_unitario)*0.02; } public void incrementaQuantità() { quantità = quantità + 1; } } public class Spesa { private ArrayList <Prodotto> lista; public Spesa() { lista = new ArrayList<Prodotto>(); } public void aggiungiProdotto(Prodotto p) { int i; for(i=0;i<lista.size();i++) { } } public void stampaLista() { int i; for(i=0;i<lista.size();i++) { System.out.println(lista.get(i).getNome()+" "+lista.get(i).getMarca()); } System.out.println(lista.size()); } }

....Praticamente ho un problema con il seguente esercizio :
Rispondi quotando
......per quanto riguarda la soluzione....la ringrazio molto per la celerità francesco, ma ho ancora dei problemi relativi al lancio di un eccezione dopo la compilazione. Una domanda come mai nel metodo aggiungiProdotto non figura il for, cioè come fa a scorrere l'ArrayList per verificare se è presente o meno un prodotto?
