-
[JAVA]non capisco dov'è l'errore
salve a tutti voi,
mi rivolgo a voi sperti perchè non riesco a capire dove è l'errore nella funzione che sotto vi riporterò.Ora vi spiego un po' meglio: il programma fatto carica da file su di una lista una serie di prodotti con id e altri attributi. la funzione sotto vale solo per le bevande calde e funziona (da eroga) solo per il primo elemento di queste, mentre per gli altri e 2 no (restiruisce prodotto non esistente) controllando però il file è caricato correttamente.
una funzione simile l'ho fatta anche per gli altri prodotti e funziona perfettamente.
String erogaBevanda(Object obj, double pr, int zucchero){
BevandeCalde pi =(BevandeCalde)obj;
for(int i=0; i<list.size();i++){
if(list.get(i) instanceof BevandeCalde){
BevandeCalde y=(BevandeCalde)list.get(i);
if(y.getId()==pi.getId())
if(y.getQuantità()>0)
if(pr>=y.getPrezzo())
if(zucchero<=y.getZucchero().getQuantità())
if(y.getBicchieri().getQuantità()>0)
if(y.getZucchero().getQuantità()>0 )
if(y.getZucchero().getFORM_DATA().compareTo(this.D ataAttuale())>0)
if(y.getFORM_DATAscad().compareTo(this.DataAttuale ())>0){
y.setQuantità(y.getQuantità()-1);
b.setQuantità(b.getQuantità()-1);
y.setBicchieri(b);
z.setQuantità(z.getQuantità()-zucchero);
y.setZucchero(z);
list.set(i,y);
this.salvaVenduti(y.getId(), y.getNome(), DataAttuale(), y.getCaric(),y.getPrezzo());
return "\nerogazione";
}
else
return "\n\nprodotto scaduto: non erogabile";
else
return "\n\nzucchero scaduto";
else
return"\n\n zucchero esaurito";
else
return "\n bicchieri esauriti: prodotto non erogabile" ;
else
return "\n\nselezionare minore quantità zucchero";
else
return "\n\ncredito non sufficiente: inserire altro contante";
else
return "\n\nprodotto esaurito";
else
return "\n\n prodotto non esistente";
}
}
return "\n\nERRORE: lista non scorsa";
}
grazie per la vostra disponibilità.
-
ho scoperto che il programma va solo epr il rpimo id dei 3, cioè quello più basso visto che lo faccio ordinare per id.
se avete bisogno di maggiori spiegazioni o di pezzi di codice.
Grazie e per favore rispondete.
Permessi di Scrittura
- Tu non puoi inviare nuove discussioni
- Tu non puoi inviare risposte
- Tu non puoi inviare allegati
- Tu non puoi modificare i tuoi messaggi
-
Regole del Forum
Segnalibri