49 lines
1.3 KiB
Java
49 lines
1.3 KiB
Java
|
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;
|
||
|
}
|
||
|
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;
|
||
|
|
||
|
}
|
||
|
return finalerPreis;
|
||
|
}
|
||
|
|
||
|
public double versandkostenBerechnen() {
|
||
|
double finalesGewicht = gewichtBerechnen();
|
||
|
if (finalesGewicht < 1.0) {
|
||
|
return 5.0;
|
||
|
} else if (finalesGewicht < 2.5) {
|
||
|
return 8.0;
|
||
|
} else {
|
||
|
return 10;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
|