diff --git a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java index 47f4614..35a977c 100644 --- a/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java +++ b/Bank-Beispiel/src/de/hs_mannheim/informatik/bank/facade/Banksystem.java @@ -34,32 +34,33 @@ public class Banksystem { } public String kontoEinzahlen(String betrag, int kontonr) { - boolean komma = false; - - // Schaut ob Betrag mit Komma (zB: 42.50) - for (char ch : betrag.toCharArray()) { - if (ch == '.') - komma = true; - } - if (!komma) - betrag = betrag + ".00"; - + // Komma hinzufügen oder nicht (Aus 10 wird 10.00) + betrag = betragMitKomma(betrag); + // Komma wird entfernt (10.00 wird zu 1000) long betrag_long = Long.parseLong(betrag.replace(".", "")); Konto k = bank.getKonto(kontonr); k.kontoEinzahlen(k, betrag_long); // Betrag mit 2 Nachkommastellen für den User anzeigen lassen - StringBuilder standKomma = new StringBuilder(Long.toString(k.getKontostand())); - int posKomma = standKomma.length()-2; - standKomma = standKomma.insert(posKomma, '.'); - - return standKomma.toString(); + return kontostandMitKomma(k); } public String kontoAbheben(String betrag, int kontonr) { - boolean komma = false; + // Komma hinzufügen oder nicht (Aus 10 wird 10.00) + betrag = betragMitKomma(betrag); + // Komma wird entfernt (10.00 wird zu 1000) + long betrag_long = Long.parseLong(betrag.replace(".", "")); + Konto k = bank.getKonto(kontonr); + k.kontoAbheben(k, betrag_long); + + // Betrag mit 2 Nachkommastellen für den User anzeigen lassen + return kontostandMitKomma(k); + } + + private String betragMitKomma(String betrag) { + boolean komma = false; // Schaut ob Betrag mit Komma (zB: 42.50) for (char ch : betrag.toCharArray()) { if (ch == '.') @@ -67,16 +68,15 @@ public class Banksystem { } if (!komma) betrag = betrag + ".00"; - - long betrag_long = Long.parseLong(betrag.replace(".", "")); - - Konto k = bank.getKonto(kontonr); - k.kontoAbheben(k, betrag_long); + return betrag; + } + + private String kontostandMitKomma(Konto k) { // Betrag mit 2 Nachkommastellen für den User anzeigen lassen StringBuilder standKomma = new StringBuilder(Long.toString(k.getKontostand())); int posKomma = standKomma.length()-2; standKomma = standKomma.insert(posKomma, '.'); - + return standKomma.toString(); }