From df7789517c8f092e8be5abae86d65b6a719a0f28 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Fri, 20 Mar 2020 14:18:53 -0400 Subject: [PATCH 01/20] first commit --- .../java/rocks/zipcode/quiz4/fundamentals/Calculator.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java b/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java index 02f2618..bd34e5b 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java @@ -5,11 +5,13 @@ */ public class Calculator { public static Double squareRoot(Double value) { - return null; + + return Math.sqrt(value); } public static Double square(Double value) { - return null; + + return value * value; } public static Double[] squareRoots(Double... value) { From 763e582c3972fb0e4e2541c728c777deb62e986a Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Fri, 20 Mar 2020 15:48:44 -0400 Subject: [PATCH 02/20] completed more tests --- .../quiz4/fundamentals/Calculator.java | 35 ++++++++++++++++--- .../quiz4/fundamentals/StringUtils.java | 19 ++++++++-- 2 files changed, 47 insertions(+), 7 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java b/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java index bd34e5b..2fb6734 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java @@ -1,5 +1,8 @@ package rocks.zipcode.quiz4.fundamentals; +import java.util.ArrayList; +import java.util.List; + /** * @author leon on 21/12/2018. */ @@ -15,23 +18,45 @@ public static Double square(Double value) { } public static Double[] squareRoots(Double... value) { - return null; + List newArray2 = new ArrayList<>(); + int count = 0; + for(Double number : value){ + newArray2.add(squareRoot(number)); + } + int len = newArray2.size(); + Double[] newArray = new Double[len]; + for(Double element : newArray2){ + newArray[count] = element; + count++; + } + return newArray; } public static Double[] squares(Double... values) { - return null; + List newArray2 = new ArrayList<>(); + int count = 0; + for(Double number : values){ + newArray2.add(square(number)); + } + int len = newArray2.size(); + Double[] newArray = new Double[len]; + for(Double element : newArray2){ + newArray[count] = element; + count++; + } + return newArray; } public static Double add(Double value1, Double value2) { - return null; + return value1 + value2; } public static Double subtract(Double value1, Double value2) { - return null; + return value1 - value2; } public static Double divide(Double divisor, Double dividend) { - return null; + return divisor / dividend; } } diff --git a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java index 5ec61be..3be7a3e 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java @@ -5,11 +5,26 @@ */ public class StringUtils { public static Character getMiddleCharacter(String string) { - return null; + String[] newArray = string.split(""); + Integer middle = newArray.length/2; + return string.charAt(middle); } public static String capitalizeMiddleCharacter(String str) { - return null; + String newString = ""; + String[] newArray = str.split(""); + Integer middle = newArray.length/2; + int count = 0; + for(String letter : newArray){ + if(count == middle){ + newString += getMiddleCharacter(str).toString().toUpperCase(); + } + else{ + newString += letter; + } + count++; + } + return newString; } public static String lowerCaseMiddleCharacter(String str) { From 9971d9b9bcb49a9f87ac0cea4fb6c0a3c5fb371a Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Fri, 20 Mar 2020 15:55:17 -0400 Subject: [PATCH 03/20] finished isogram tests --- .../quiz4/fundamentals/StringUtils.java | 25 +++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java index 3be7a3e..d1f1770 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java @@ -28,11 +28,32 @@ public static String capitalizeMiddleCharacter(String str) { } public static String lowerCaseMiddleCharacter(String str) { - return null; + String newString = ""; + String[] newArray = str.split(""); + Integer middle = newArray.length/2; + int count = 0; + for(String letter : newArray){ + if(count == middle){ + newString += getMiddleCharacter(str).toString().toLowerCase(); + } + else{ + newString += letter; + } + count++; + } + return newString; } public static Boolean isIsogram(String str) { - return null; + String[] newArray = str.split(""); + for(int i = 0; i < newArray.length; i++){ + for(int j = 1; j Date: Fri, 20 Mar 2020 17:06:06 -0400 Subject: [PATCH 04/20] completed more tests --- .../zipcode/quiz4/fundamentals/StringUtils.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java index d1f1770..a614493 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java @@ -57,7 +57,17 @@ public static Boolean isIsogram(String str) { } public static Boolean hasDuplicateConsecutiveCharacters(String str) { - return null; + String[] newArray = str.split(""); + for(int i = 0; i < newArray.length; i++){ + if( i == newArray.length - 1){ + break; + } + else if (newArray[i].equals(newArray[i + 1])){ + return true; + } + } + + return false; } public static String removeConsecutiveDuplicateCharacters(String str) { From 41e2063423eac281a5f737a641ffe6b179f32634 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 15:30:27 -0400 Subject: [PATCH 05/20] finished remove duplicate characters --- .../quiz4/fundamentals/StringUtils.java | 26 ++++++++++++++++--- 1 file changed, 22 insertions(+), 4 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java index a614493..137a253 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java @@ -46,20 +46,21 @@ public static String lowerCaseMiddleCharacter(String str) { public static Boolean isIsogram(String str) { String[] newArray = str.split(""); + for(int i = 0; i < newArray.length; i++){ for(int j = 1; j Date: Sat, 21 Mar 2020 15:38:55 -0400 Subject: [PATCH 06/20] finished invert casing --- .../zipcode/quiz4/fundamentals/StringUtils.java | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java index 137a253..70d2cd7 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java @@ -93,6 +93,17 @@ else if(!newArray[i].equals(newArray[i+1])){ } public static String invertCasing(String str) { - return null; + String newString = ""; + String[] newArray = str.split(""); + for(int i = 0; i < newArray.length; i++){ + if(newArray[i].toUpperCase().equals(newArray[i])){ + newString += newArray[i].toLowerCase(); + } + else{ + newString += newArray[i].toUpperCase(); + } + } + + return newString; } } \ No newline at end of file From d54a8ff2347cd6194e408df6a7c75071c49cc69a Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 16:02:20 -0400 Subject: [PATCH 07/20] finished isogram --- .../quiz4/fundamentals/StringUtils.java | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java index 70d2cd7..690be02 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java @@ -1,5 +1,10 @@ package rocks.zipcode.quiz4.fundamentals; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + /** * @author leon on 21/12/2018. */ @@ -46,15 +51,14 @@ public static String lowerCaseMiddleCharacter(String str) { public static Boolean isIsogram(String str) { String[] newArray = str.split(""); - - for(int i = 0; i < newArray.length; i++){ - for(int j = 1; j newArray2 = new ArrayList(); + newArray2.addAll(Arrays.asList(newArray)); + for(int i = 0; i < newArray2.size(); i++){ + if(Collections.frequency(newArray2, newArray2.get(i)) > 1){ + return false; } } - return false; + return true; } public static Boolean hasDuplicateConsecutiveCharacters(String str) { From edb1ca755b3c4b52bc280b2521f5f4649a0af021 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 16:08:45 -0400 Subject: [PATCH 08/20] finished remove middle element --- .../rocks/zipcode/quiz4/arrays/ArrayUtils.java | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java b/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java index 6deaf61..a69b785 100644 --- a/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java @@ -5,11 +5,23 @@ */ public class ArrayUtils { public static String getMiddleElement(String[] values) { - return null; + int len = values.length; + return values[len/2]; } public static String[] removeMiddleElement(String[] values) { - return null; + String[] newArray = new String[values.length - 1]; + int count = 0; + for(String letter : values){ + if(letter.equals(getMiddleElement(values))){ + continue; + } + else{ + newArray[count] = letter; + count++; + } + } + return newArray; } public static String getLastElement(String[] values) { From 98117b4abc4a62bdae5428d6c15ed6feef1f6579 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 16:09:30 -0400 Subject: [PATCH 09/20] finished last element tests --- src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java b/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java index a69b785..c9eefdf 100644 --- a/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java @@ -25,7 +25,7 @@ public static String[] removeMiddleElement(String[] values) { } public static String getLastElement(String[] values) { - return null; + return values[values.length-1]; } public static String[] removeLastElement(String[] values) { From 33e7b5973a1bc0ad6063aafba5a3f4a548d46538 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 16:21:16 -0400 Subject: [PATCH 10/20] finished last element test --- src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java b/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java index c9eefdf..777dca5 100644 --- a/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/arrays/ArrayUtils.java @@ -29,6 +29,10 @@ public static String getLastElement(String[] values) { } public static String[] removeLastElement(String[] values) { - return null; + String[] newArray = new String[values.length - 1]; + for(int i = 0; i < newArray.length; i++){ + newArray[i] = values[i]; + } + return newArray; } } \ No newline at end of file From ee7e59f0767862fd5c7ab172214b56587a6d2909 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 16:46:20 -0400 Subject: [PATCH 11/20] finished get all spices test --- .../rocks/zipcode/quiz4/collections/culonary/Curry.java | 2 +- .../java/rocks/zipcode/quiz4/collections/culonary/Food.java | 6 +++++- .../rocks/zipcode/quiz4/collections/culonary/Ginger.java | 2 +- .../rocks/zipcode/quiz4/collections/culonary/Pepper.java | 2 +- 4 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Curry.java b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Curry.java index 199cefc..c6b96b4 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Curry.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Curry.java @@ -1,4 +1,4 @@ package rocks.zipcode.quiz4.collections.culonary; -public class Curry { +public class Curry implements Spice { } diff --git a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java index e06abbc..d1a17af 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java @@ -1,5 +1,6 @@ package rocks.zipcode.quiz4.collections.culonary; +import java.util.ArrayList; import java.util.List; import java.util.Map; @@ -7,8 +8,10 @@ * @author leon on 27/12/2018. */ public class Food { + List spices = new ArrayList<>(); public List getAllSpices() { - return null; + + return this.spices; } public > Map getSpiceCount() { @@ -16,5 +19,6 @@ public > Map getSpi } public void applySpice(Spice spice) { + this.spices.add(spice); } } diff --git a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Ginger.java b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Ginger.java index 3c4e177..1667d46 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Ginger.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Ginger.java @@ -3,5 +3,5 @@ /** * @author leon on 27/12/2018. */ -public class Ginger { +public class Ginger implements Spice { } diff --git a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Pepper.java b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Pepper.java index 4b771a8..eafd2a5 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Pepper.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Pepper.java @@ -3,5 +3,5 @@ /** * @author leon on 27/12/2018. */ -public class Pepper { +public class Pepper implements Spice { } From f7f43246b09a3db0a5f38a1bc86f4c4a0bdb40ad Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 18:09:08 -0400 Subject: [PATCH 12/20] more tests --- .../zipcode/quiz4/collections/WordCounter.java | 14 +++++++++++++- .../zipcode/quiz4/collections/culonary/Food.java | 2 ++ 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/src/main/java/rocks/zipcode/quiz4/collections/WordCounter.java b/src/main/java/rocks/zipcode/quiz4/collections/WordCounter.java index 2bf5ec2..da1c747 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/WordCounter.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/WordCounter.java @@ -1,12 +1,24 @@ package rocks.zipcode.quiz4.collections; +import java.util.HashMap; import java.util.Map; public class WordCounter { + Map wordMap = new HashMap<>(); public WordCounter(String... strings) { + for(String word : strings){ + Integer count = wordMap.get(word); + if(count == null){ + wordMap.put(word, 1); + } + else{ + wordMap.put(word, wordMap.get(word) + 1); + } + } } public Map getWordCountMap() { - return null; + + return wordMap; } } diff --git a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java index d1a17af..5c2b37f 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java @@ -1,6 +1,7 @@ package rocks.zipcode.quiz4.collections.culonary; import java.util.ArrayList; +import java.util.HashMap; import java.util.List; import java.util.Map; @@ -15,6 +16,7 @@ public List getAllSpices() { } public > Map getSpiceCount() { + return null; } From c155b4a17d26ff20cfb4ff684a101513ced7ea62 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 18:09:25 -0400 Subject: [PATCH 13/20] finished more tests --- .../rocks/zipcode/quiz4/objectorientation/account/Account.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Account.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Account.java index 40eb4a8..3054d6d 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Account.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Account.java @@ -3,7 +3,7 @@ /** * @author leon on 30/12/2018. */ -public class Account extends BankAccount { +public class Account { public Long getId() { return null; } From c6d2ae60bf6f6a717747a87ff9b46f7344615c43 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 18:10:31 -0400 Subject: [PATCH 14/20] completed more tests --- .../zipcode/quiz4/objectorientation/account/Account.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Account.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Account.java index 3054d6d..574ba32 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Account.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Account.java @@ -4,10 +4,12 @@ * @author leon on 30/12/2018. */ public class Account { + private Long id; public Long getId() { - return null; + return id; } public void setId(Long id) { + this.id = id; } } From 5a24a6cd621dc88054595e84e8c3eeb7f23a267f Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 18:28:58 -0400 Subject: [PATCH 15/20] completed more tests --- .../quiz4/objectorientation/account/Bank.java | 8 +++++++- .../objectorientation/account/BankAccount.java | 17 ++++++++++++++++- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java index 0dd4183..9de4cf6 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java @@ -1,17 +1,23 @@ package rocks.zipcode.quiz4.objectorientation.account; +import java.util.ArrayList; +import java.util.List; + /** * @author leon on 27/12/2018. */ public class Bank { + List allAccounts = new ArrayList(); public BankAccount removeBankAccountByIndex(Integer indexNumber) { return null; } public void addBankAccount(BankAccount bankAccount) { + allAccounts.add(bankAccount); } public Boolean containsBankAccount(BankAccount bankAccount) { - throw new UnsupportedOperationException("Method not yet implemented"); + + return allAccounts.contains(bankAccount); } } diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java index 70ccb74..9135289 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java @@ -3,7 +3,22 @@ /** * @author leon on 27/12/2018. */ -public class BankAccount { +public class BankAccount extends Account implements Transactable { public void setBalance(Double val) { } + + @Override + public void deposit(Double amountToIncreaseBy) { + + } + + @Override + public void withdrawal(Double amountToDecreaseBy) { + + } + + @Override + public Double getBalance() { + return null; + } } From 307fd50d66022f47e83adf5b911363f70256491b Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 19:03:26 -0400 Subject: [PATCH 16/20] finished more tests --- .../zipcode/quiz4/objectorientation/account/Bank.java | 8 +++++--- .../quiz4/objectorientation/account/BankAccount.java | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java index 9de4cf6..7f0b1c6 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java @@ -7,9 +7,11 @@ * @author leon on 27/12/2018. */ public class Bank { - List allAccounts = new ArrayList(); - public BankAccount removeBankAccountByIndex(Integer indexNumber) { - return null; + List allAccounts = new ArrayList<>(); + public void removeBankAccountByIndex(Integer indexNumber) { + int number = indexNumber; + allAccounts.remove(number); + } public void addBankAccount(BankAccount bankAccount) { diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java index 9135289..374e996 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java @@ -9,7 +9,7 @@ public void setBalance(Double val) { @Override public void deposit(Double amountToIncreaseBy) { - + } @Override From ca773da18a50170b4c3ae332912df7f7a15f5d12 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 19:12:21 -0400 Subject: [PATCH 17/20] finished more tests --- .../quiz4/objectorientation/account/BankAccount.java | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java index 374e996..6b8fe7d 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java @@ -4,21 +4,24 @@ * @author leon on 27/12/2018. */ public class BankAccount extends Account implements Transactable { + private Double balance; public void setBalance(Double val) { + this.balance = val; } @Override public void deposit(Double amountToIncreaseBy) { + this.balance += amountToIncreaseBy; } @Override public void withdrawal(Double amountToDecreaseBy) { - + this.balance -= amountToDecreaseBy; } @Override public Double getBalance() { - return null; + return this.balance; } } From 4f7f753a99bfdf585ab1eaa4d8522a89c321941b Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sat, 21 Mar 2020 21:16:13 -0400 Subject: [PATCH 18/20] finished more tests --- .../objectorientation/account/BankAccount.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java index 6b8fe7d..31b04e6 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java @@ -11,13 +11,26 @@ public void setBalance(Double val) { @Override public void deposit(Double amountToIncreaseBy) { - this.balance += amountToIncreaseBy; + if(amountToIncreaseBy < 0){ + throw new IllegalArgumentException("Deposit must be positive"); + } + else { + this.balance += amountToIncreaseBy; + } } @Override public void withdrawal(Double amountToDecreaseBy) { - this.balance -= amountToDecreaseBy; + if(amountToDecreaseBy < 0){ + throw new IllegalArgumentException("Withdrawal must be positive"); + } + else if(amountToDecreaseBy > balance){ + throw new IllegalArgumentException("Withdrawal amount is greater than balance"); + } + else { + this.balance -= amountToDecreaseBy; + } } @Override From 040cb25773fe11bc48b92119e85eb071d6e3d7c2 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sun, 22 Mar 2020 15:30:36 -0400 Subject: [PATCH 19/20] finished spices --- .../quiz4/collections/culonary/Food.java | 5 +- .../objectorientation/account/Employee.java | 51 ++++++++++++++++++- 2 files changed, 52 insertions(+), 4 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java index 5c2b37f..8d8db35 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java @@ -16,8 +16,9 @@ public List getAllSpices() { } public > Map getSpiceCount() { - - return null; + Map spiceMap = new HashMap<>(); + spiceMap.put((SpiceType) spices.get(0).getClass(), spices.size()); + return spiceMap; } public void applySpice(Spice spice) { diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java index 8407f1a..d581f45 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java @@ -3,18 +3,65 @@ /** * @author leon on 30/12/2018. */ -public class Employee { +public class Employee implements Transactable, Worker { + private Double hourlyWage; + private Double hoursWorked; + private Double balance; + private Double bankAccountBalance; + private BankAccount bankAccount = new BankAccount(); public Employee() { + this.hourlyWage = 35.0; + this.hoursWorked = 0.0; + this.balance = 0.0; + this.bankAccountBalance = 0.0; + } public Employee(BankAccount bankAccount) { + this.bankAccount = bankAccount; } public BankAccount getBankAccount() { - return null; + return this.bankAccount; } public void setBankAccount(BankAccount bankAccount) { + this.bankAccount = bankAccount; + } + + @Override + public void deposit(Double amountToIncreaseBy) { + this.bankAccount.deposit(amountToIncreaseBy); + } + + @Override + public void withdrawal(Double amountToDecreaseBy) { + this.bankAccount.withdrawal(amountToDecreaseBy); + } + + @Override + public Double getBalance() { + return this.balance; + } + + @Override + public void increaseHoursWorked(Double numberOfHours) { + this.hoursWorked += numberOfHours; + + } + + @Override + public Double getHoursWorked() { + return this.hoursWorked; + } + + @Override + public Double getHourlyWage() { + return this.hourlyWage; + } + @Override + public Double getMoneyEarned() { + return this.getHourlyWage()*this.getHoursWorked(); } } From 8b392f9d00b766c25b3faadd78560d11518978c9 Mon Sep 17 00:00:00 2001 From: Khalil Crumpler Date: Sun, 22 Mar 2020 15:36:16 -0400 Subject: [PATCH 20/20] finished quiz --- .../quiz4/objectorientation/account/BankAccount.java | 2 +- .../quiz4/objectorientation/account/Employee.java | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java index 31b04e6..ef28dec 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java @@ -4,7 +4,7 @@ * @author leon on 27/12/2018. */ public class BankAccount extends Account implements Transactable { - private Double balance; + private Double balance = 0.0; public void setBalance(Double val) { this.balance = val; } diff --git a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java index d581f45..f8cf4d9 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java @@ -6,19 +6,19 @@ public class Employee implements Transactable, Worker { private Double hourlyWage; private Double hoursWorked; - private Double balance; - private Double bankAccountBalance; - private BankAccount bankAccount = new BankAccount(); + private BankAccount bankAccount; public Employee() { this.hourlyWage = 35.0; this.hoursWorked = 0.0; - this.balance = 0.0; - this.bankAccountBalance = 0.0; + this.bankAccount = new BankAccount(); + bankAccount.setBalance(0.0); } public Employee(BankAccount bankAccount) { this.bankAccount = bankAccount; + this.hourlyWage = 35.0; + this.hoursWorked = 0.0; } public BankAccount getBankAccount() { @@ -41,7 +41,7 @@ public void withdrawal(Double amountToDecreaseBy) { @Override public Double getBalance() { - return this.balance; + return this.bankAccount.getBalance(); } @Override