Warenkorb überarbeitet und vervollständigt
commit
a2a2ab979b
|
@ -0,0 +1,48 @@
|
|||
import java.util.HashMap;
|
||||
|
||||
public class Warenkorb {
|
||||
private final HashMap<Produkt, Integer> produktanzahl = new HashMap<>();
|
||||
|
||||
public HashMap<Produkt, Integer> getProduktanzahl() {
|
||||
return produktanzahl;
|
||||
}
|
||||
|
||||
public void produktHinzufuegen(Produkt produkt, int anzahl) {
|
||||
produktanzahl.put(produkt, anzahl);
|
||||
}
|
||||
|
||||
public double gewichtBerechnen() {
|
||||
double finalesGewicht = 0;
|
||||
for (Produkt produkt : produktanzahl.keySet()) {
|
||||
int anzahl = produktanzahl.get(produkt);
|
||||
double gewicht = produkt.getGewicht() * anzahl;
|
||||
finalesGewicht += gewicht;
|
||||
}
|
||||
finalesGewicht = Math.round(finalesGewicht * 100.0) / 100.0;
|
||||
return finalesGewicht;
|
||||
}
|
||||
|
||||
|
||||
public double preisBerechnen() {
|
||||
double finalerPreis = 0;
|
||||
for (Produkt produkt : produktanzahl.keySet()) {
|
||||
int anzahl = produktanzahl.get(produkt);
|
||||
double preis = produkt.getPreis() * anzahl;
|
||||
finalerPreis += preis;
|
||||
|
||||
}
|
||||
finalerPreis = Math.round(finalerPreis * 100.0) / 100.0;
|
||||
return finalerPreis;
|
||||
}
|
||||
|
||||
public double versandkostenBerechnen() {
|
||||
double finalesGewicht = gewichtBerechnen();
|
||||
if (finalesGewicht < 1000) {
|
||||
return 5.0;
|
||||
} else if (finalesGewicht < 2500) {
|
||||
return 8.0;
|
||||
} else {
|
||||
return 10;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue