diff --git a/.classpath b/.classpath index 9f9bbb5..b185c2e 100644 --- a/.classpath +++ b/.classpath @@ -1,10 +1,11 @@ - + + - + diff --git a/src/ATM.java b/src/ATM.java index 511df07..ff046a7 100644 --- a/src/ATM.java +++ b/src/ATM.java @@ -1,25 +1,48 @@ -import java.util.*; +mport java.util.HashMap; public class ATM { - HashMap map; - - public ATM() { - map = new HashMap(); + private HashMap database; + + public ATM() + { + database = new HashMap (); } - - public void deposit(String id, int amt) { - map.put(id, amt); + + public void deposit(String userID, double amount) throws Exception + { + if (database.containsKey (userID)) + { + double currBalance= database.get(userID); + database.replace(userID, currBalance + amount); + } + else + { + database.put(userID,amount); + + } } - - - @Override - public String toString() { - return "ATM [map=" + map + "]"; + + public void withdraw (String userID, double amount) throws Exception + { + double currBalance = database.get(userID); + if (amount> currBalance) + { + throw new Exception(); + } + else + { + database.replace(userID, currBalance - amount); + + } } - public static void main (String [] args) { - ATM chase = new ATM(); - chase.deposit("COLINYUAN01", 1000000); - System.out.println(chase.toString()); + public double checkBalance (String userID) throws Exception + { + if (!database.containsKey (userID)) + { + throw new Exception(); + + } + return database.get(userID); } } diff --git a/src/ATMTester.java b/src/ATMTester.java new file mode 100644 index 0000000..c463f20 --- /dev/null +++ b/src/ATMTester.java @@ -0,0 +1,17 @@ + +public class ATMTester { + public static void main (String[] args) { + ATM chase = new ATM(); + chase.deposit("Winfrey", 10.0); + chase.deposit("Bezos", 5.0); + chase.deposit("Bezos", 2.0); + chase.deposit("MrTheiss",13.0); + chase.withdraw("Bezos", 2.0); + chase.withdraw("MrTheiss", 15.0); + System.out.println(chase.checkBalance("Bezos")); + System.out.println(chase.checkBalance("Winfrey")); + System.out.println(chase.checkBalance("YoMama")); + System.out.println(chase.checkBalance("MrTheiss")); + + } +}