From 15e9275daa57a4702db227300d2c50b8dcc6811c Mon Sep 17 00:00:00 2001 From: eddie Date: Mon, 9 Dec 2019 21:05:33 -0500 Subject: [PATCH 1/4] 40 / 150 --- .../quiz4/fundamentals/Calculator.java | 16 +++++--- .../quiz4/fundamentals/StringUtils.java | 40 +++++++++++++++---- .../objectorientation/account/Account.java | 5 ++- .../quiz4/objectorientation/account/Bank.java | 6 +++ .../account/BankAccount.java | 20 +++++++++- 5 files changed, 72 insertions(+), 15 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..95a0a1d 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/Calculator.java @@ -5,15 +5,19 @@ */ 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) { - return null; + Double[] array; + for (int currentIndex = 0; currentIndex < value.length; currentIndex++) { + Double element = value[currentIndex]; + squareRoot(element); + }return null; } public static Double[] squares(Double... values) { @@ -21,15 +25,15 @@ public static Double[] squares(Double... values) { } 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..94d3cd4 100644 --- a/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java +++ b/src/main/java/rocks/zipcode/quiz4/fundamentals/StringUtils.java @@ -5,15 +5,16 @@ */ public class StringUtils { public static Character getMiddleCharacter(String string) { - return null; + char middleChar = string.charAt(string.length()/2); + return middleChar; } public static String capitalizeMiddleCharacter(String str) { - return null; + return getMiddleCharacter(str).toString().toUpperCase(); } public static String lowerCaseMiddleCharacter(String str) { - return null; + return getMiddleCharacter(str).toString().toLowerCase(); } public static Boolean isIsogram(String str) { @@ -21,14 +22,39 @@ public static Boolean isIsogram(String str) { } public static Boolean hasDuplicateConsecutiveCharacters(String str) { - return null; + char[] duplicateCharacters = str.toCharArray(); + char previousElement; + for (int currentIndex = 1; currentIndex < duplicateCharacters.length; currentIndex++) { + char currentElement = duplicateCharacters[currentIndex]; + previousElement = duplicateCharacters[currentIndex-1]; + if(previousElement == currentElement){ + return true; + } + } + return false; } public static String removeConsecutiveDuplicateCharacters(String str) { - return null; + String result = ""; + char[] duplicateCharacters = str.toCharArray(); + for (int currentIndex = 0; currentIndex < duplicateCharacters.length; currentIndex++){ + char currentElement = duplicateCharacters[currentIndex]; + if(!hasDuplicateConsecutiveCharacters(str)){ + result += currentElement; + } + } + return result; } public static String invertCasing(String str) { - return null; - } + // String result = ""; + // Character[] invertedChar = str.toCharArray().toString().toUpperCase(); + // Character lowerCaseFirstChar = str.toCharArray().toString().toLowerCase(); + // for (int currentIndex = 0; currentIndex < invertedChar.length; currentIndex++) { + // char currentElement = invertedChar[currentIndex]; + // if (currentElement == invertedChar[currentIndex+1]) { + // } + // } + return null; + } } \ No newline at end of file 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..467318b 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,13 @@ * @author leon on 30/12/2018. */ public class Account extends BankAccount { + private Long id; + public Long getId() { - return null; + return this.id; } public void setId(Long id) { + this.id=id; } } 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..50c939e 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java @@ -1,10 +1,16 @@ package rocks.zipcode.quiz4.objectorientation.account; +import java.util.ArrayList; + /** * @author leon on 27/12/2018. */ public class Bank { public BankAccount removeBankAccountByIndex(Integer indexNumber) { + + for (int currentIndex = 0; currentIndex < indexNumber; currentIndex++) { + + } return null; } 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..4e0c4cf 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,25 @@ /** * @author leon on 27/12/2018. */ -public class BankAccount { +public class BankAccount implements Transactable { + private Double val; + public void setBalance(Double val) { + this.val = val; + } + + @Override + public void deposit(Double amountToIncreaseBy) { + + } + + @Override + public void withdrawal(Double amountToDecreaseBy) { + + } + + @Override + public Double getBalance() { + return null; } } From 5b9d03f0c1e02be82ea3174c064b9900720ffd2b Mon Sep 17 00:00:00 2001 From: eddie Date: Mon, 9 Dec 2019 22:45:04 -0500 Subject: [PATCH 2/4] 55/150 --- .../quiz4/objectorientation/account/Bank.java | 13 +++-- .../objectorientation/account/Employee.java | 47 ++++++++++++++++++- 2 files changed, 53 insertions(+), 7 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 50c939e..92d0058 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Bank.java @@ -1,23 +1,26 @@ package rocks.zipcode.quiz4.objectorientation.account; import java.util.ArrayList; +import java.util.List; /** * @author leon on 27/12/2018. */ public class Bank { - public BankAccount removeBankAccountByIndex(Integer indexNumber) { + List bankAccountList = new ArrayList<>(); - for (int currentIndex = 0; currentIndex < indexNumber; currentIndex++) { - } - return null; + public BankAccount removeBankAccountByIndex(Integer indexNumber) { + BankAccount account = bankAccountList.get(indexNumber); + bankAccountList.remove(account); + return account; } public void addBankAccount(BankAccount bankAccount) { + bankAccountList.add(bankAccount); } public Boolean containsBankAccount(BankAccount bankAccount) { - throw new UnsupportedOperationException("Method not yet implemented"); + return bankAccountList.contains(bankAccount); } } 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..62ecf77 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,61 @@ /** * @author leon on 30/12/2018. */ -public class Employee { +public class Employee implements Transactable, Worker { + private BankAccount bankAccount; + private double numberOfHoursWorked; + private double hourlyWage; + public Employee() { + this.bankAccount = new BankAccount(); } + public Employee(BankAccount bankAccount) { + this.bankAccount = bankAccount; } public BankAccount getBankAccount() { - return null; + return bankAccount; } public void setBankAccount(BankAccount bankAccount) { + this.bankAccount = bankAccount; + } + + @Override + public void deposit(Double amountToIncreaseBy) { + bankAccount.deposit(amountToIncreaseBy); + } + + @Override + public void withdrawal(Double amountToDecreaseBy) { + bankAccount.withdrawal(amountToDecreaseBy); + + } + + @Override + public Double getBalance() { + return bankAccount.getBalance(); + } + + @Override + public void increaseHoursWorked(Double numberOfHours) { + this.numberOfHoursWorked += numberOfHours; + } + + @Override + public Double getHoursWorked() { + return this.numberOfHoursWorked; + } + + @Override + public Double getHourlyWage() { + return this.numberOfHoursWorked * hourlyWage; + } + @Override + public Double getMoneyEarned() { + return getHourlyWage() * numberOfHoursWorked; } } From 22630b77998d86f022c3b56839d4bab3bfead4b4 Mon Sep 17 00:00:00 2001 From: eddie Date: Mon, 9 Dec 2019 23:44:41 -0500 Subject: [PATCH 3/4] 80/150 --- .../quiz4/collections/WordCounter.java | 33 +++++++++++++++++-- .../quiz4/collections/culonary/Curry.java | 2 +- .../quiz4/collections/culonary/Ginger.java | 2 +- .../quiz4/collections/culonary/Pepper.java | 2 +- .../account/BankAccount.java | 12 +++---- .../objectorientation/account/Employee.java | 4 ++- 6 files changed, 43 insertions(+), 12 deletions(-) diff --git a/src/main/java/rocks/zipcode/quiz4/collections/WordCounter.java b/src/main/java/rocks/zipcode/quiz4/collections/WordCounter.java index 2bf5ec2..b52fb72 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/WordCounter.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/WordCounter.java @@ -1,12 +1,41 @@ package rocks.zipcode.quiz4.collections; -import java.util.Map; +import java.util.*; public class WordCounter { + private final String[] stringArray; + public WordCounter(String... strings) { + this.stringArray= strings; } public Map getWordCountMap() { - return null; + Map map = new HashMap<>(); + List allWords = getAllWords(); + for(String word : allWords) { + map.put(word, getNumberOfOccurrences(allWords, word)); + } + return map; + } + + private Integer getNumberOfOccurrences(List allWords, String wordToCheck) { + int count = 0; + for(String word : allWords) { + if(word.equals(wordToCheck)) { + count++; + } + } + return count; + } + + private List getAllWords() { + List result = new ArrayList<>(); + for(String string : stringArray) { + String[] words = string.split(" "); + for(String word : words) { + result.add(word); + } + } + return result; } } 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/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 { } 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 4e0c4cf..2db7478 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/BankAccount.java @@ -4,24 +4,24 @@ * @author leon on 27/12/2018. */ public class BankAccount implements Transactable { - private Double val; + private Double balance = 0.0; - public void setBalance(Double val) { - this.val = val; + public void setBalance(Double balance) { + this.balance = balance; } @Override public void deposit(Double amountToIncreaseBy) { - + setBalance(getBalance() + amountToIncreaseBy); } @Override public void withdrawal(Double amountToDecreaseBy) { - + deposit(-amountToDecreaseBy); } @Override public Double getBalance() { - return null; + return balance; } } 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 62ecf77..fd04440 100644 --- a/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java +++ b/src/main/java/rocks/zipcode/quiz4/objectorientation/account/Employee.java @@ -9,6 +9,8 @@ public class Employee implements Transactable, Worker { private double hourlyWage; public Employee() { + this.hourlyWage = 35.0; + this.numberOfHoursWorked = 0.0; this.bankAccount = new BankAccount(); } @@ -53,7 +55,7 @@ public Double getHoursWorked() { @Override public Double getHourlyWage() { - return this.numberOfHoursWorked * hourlyWage; + return hourlyWage; } @Override From a184d066d67bf53afb8182a78ccbe5d3534a010f Mon Sep 17 00:00:00 2001 From: eddie Date: Mon, 9 Dec 2019 23:51:55 -0500 Subject: [PATCH 4/4] 78/154 --- .../java/rocks/zipcode/quiz4/collections/culonary/Food.java | 3 ++- .../java/rocks/zipcode/quiz4/collections/culonary/Pepper.java | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) 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..9502b69 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Food.java @@ -12,7 +12,8 @@ public List getAllSpices() { } public > Map getSpiceCount() { - return null; + Map spiceCount = null; + return spiceCount; } public void applySpice(Spice 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 eafd2a5..f627101 100644 --- a/src/main/java/rocks/zipcode/quiz4/collections/culonary/Pepper.java +++ b/src/main/java/rocks/zipcode/quiz4/collections/culonary/Pepper.java @@ -4,4 +4,5 @@ * @author leon on 27/12/2018. */ public class Pepper implements Spice { + }