2 Methoden hinzugefügt um doppelten Code zu beseitigen

betragMitKomma
kontostandMitKomma
master
Alper Kaya 2022-10-11 12:11:24 +02:00
parent 9e278deeba
commit 4cef95e571
1 changed files with 22 additions and 22 deletions

View File

@ -34,32 +34,33 @@ public class Banksystem {
} }
public String kontoEinzahlen(String betrag, int kontonr) { public String kontoEinzahlen(String betrag, int kontonr) {
boolean komma = false; // Komma hinzufügen oder nicht (Aus 10 wird 10.00)
betrag = betragMitKomma(betrag);
// Schaut ob Betrag mit Komma (zB: 42.50) // Komma wird entfernt (10.00 wird zu 1000)
for (char ch : betrag.toCharArray()) {
if (ch == '.')
komma = true;
}
if (!komma)
betrag = betrag + ".00";
long betrag_long = Long.parseLong(betrag.replace(".", "")); long betrag_long = Long.parseLong(betrag.replace(".", ""));
Konto k = bank.getKonto(kontonr); Konto k = bank.getKonto(kontonr);
k.kontoEinzahlen(k, betrag_long); k.kontoEinzahlen(k, betrag_long);
// Betrag mit 2 Nachkommastellen für den User anzeigen lassen // Betrag mit 2 Nachkommastellen für den User anzeigen lassen
StringBuilder standKomma = new StringBuilder(Long.toString(k.getKontostand())); return kontostandMitKomma(k);
int posKomma = standKomma.length()-2;
standKomma = standKomma.insert(posKomma, '.');
return standKomma.toString();
} }
public String kontoAbheben(String betrag, int kontonr) { 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) // Schaut ob Betrag mit Komma (zB: 42.50)
for (char ch : betrag.toCharArray()) { for (char ch : betrag.toCharArray()) {
if (ch == '.') if (ch == '.')
@ -67,16 +68,15 @@ public class Banksystem {
} }
if (!komma) if (!komma)
betrag = betrag + ".00"; betrag = betrag + ".00";
return betrag;
long betrag_long = Long.parseLong(betrag.replace(".", "")); }
Konto k = bank.getKonto(kontonr); private String kontostandMitKomma(Konto k) {
k.kontoAbheben(k, betrag_long);
// Betrag mit 2 Nachkommastellen für den User anzeigen lassen // Betrag mit 2 Nachkommastellen für den User anzeigen lassen
StringBuilder standKomma = new StringBuilder(Long.toString(k.getKontostand())); StringBuilder standKomma = new StringBuilder(Long.toString(k.getKontostand()));
int posKomma = standKomma.length()-2; int posKomma = standKomma.length()-2;
standKomma = standKomma.insert(posKomma, '.'); standKomma = standKomma.insert(posKomma, '.');
return standKomma.toString(); return standKomma.toString();
} }