From b858d0163cd38d3b68b1b2f9dab07bfff9dd95e7 Mon Sep 17 00:00:00 2001 From: "Nicholas H." <3013379@stud.hs-mannheim.de> Date: Mon, 21 Oct 2024 10:05:02 +0200 Subject: [PATCH] Warenkorb Warenkorb Klasse, sowie wichtige Methoden (preisBerechnen, versandkostenBerechnen, gewichtBerechnen) erstellt. --- Warenkorb.java | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Warenkorb.java diff --git a/Warenkorb.java b/Warenkorb.java new file mode 100644 index 0000000..7716361 --- /dev/null +++ b/Warenkorb.java @@ -0,0 +1,48 @@ +import java.util.HashMap; + +public class Warenkorb { + private final HashMap produktanzahl = new HashMap<>(); + + public HashMap 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; + } + } +} + +