Klasse zur Verwaltung eines Bankkontos mit Transaktionshistorie

Java Medium classes

Aufgabe «Klasse zur Verwaltung eines Bankkontos mit Transaktionshistorie»

Erstellen Sie die Klasse BankAccount, die den Kontostand und eine Liste von Transaktionen speichert. Implementieren Sie die Methoden: deposit(double amount) — Einzahlung, withdraw(double amount) — Abhebung (kein negativer Saldo erlaubt), getBalance() — aktueller Kontostand, getTransactionHistory() — gibt eine Liste von Zeichenketten der Form "Deposit: 100.0" oder "Withdraw: 50.0" zurück. In main lesen Sie von stdin die Anzahl der Operationen n, dann n Zeilen: jede Zeile enthält "D Betrag" (Einzahlung) oder "W Betrag" (Abhebung). Nach der Verarbeitung aller Operationen geben Sie den endgültigen Kontostand und die Transaktionshistorie aus (jeweils in einer neuen Zeile). Einschränkungen: Der Betrag ist eine positive double-Zahl, n ≤ 100.

Eingabeformat

In der ersten Zeile eine ganze Zahl n — die Anzahl der Operationen. Dann n Zeilen: jede enthält das Zeichen 'D' oder 'W' und durch ein Leerzeichen getrennt eine Gleitkommazahl — den Betrag der Operation.

Ausgabeformat

Erste Zeile: "Balance: X.XX" (Kontostand mit zwei Nachkommastellen). Dann für jede Operation eine Zeile der Form "Deposit: X.XX" oder "Withdraw: X.XX" in der Reihenfolge der Ausführung.

Beispiele

Beispiel 1

EINGABE
1 D 500.0
AUSGABE
Balance: 500.00 Deposit: 500.00

Beispiel 2

EINGABE
5
AUSGABE
Balance: 0.00
main.java