From b6881064aeb8eec1dd611857f1fef1e75f323724 Mon Sep 17 00:00:00 2001 From: "github-classroom[bot]" <66690702+github-classroom[bot]@users.noreply.github.com> Date: Mon, 8 Jul 2024 13:03:59 +0000 Subject: [PATCH 01/18] Setting up GitHub Classroom Feedback From a4dc6876b9d5d7813bef71c6ffad6a092236be3f Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 09:33:16 -0400 Subject: [PATCH 02/18] finished BasicArrayUtils --- .../assessment1/part1/BasicArrayUtils.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicArrayUtils.java index ef714b5..b0d9346 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicArrayUtils.java @@ -9,7 +9,8 @@ public class BasicArrayUtils { * @return the first element in the array */ public static String getFirstElement(String[] stringArray) { - return null; + return stringArray[0]; +// return null; } /** @@ -17,7 +18,8 @@ public static String getFirstElement(String[] stringArray) { * @return the second element in the array */ public static String getSecondElement(String[] stringArray) { - return null; + return stringArray[1]; +// return null; } /** @@ -25,7 +27,8 @@ public static String getSecondElement(String[] stringArray) { * @return the last element in the array */ public static String getLastElement(String[] stringArray) { - return null; + return stringArray[stringArray.length-1]; +// return null; } /** @@ -33,6 +36,7 @@ public static String getLastElement(String[] stringArray) { * @return the second to last element in the array */ public static String getSecondToLastElement(String[] stringArray) { - return null; + return stringArray[stringArray.length-2]; +// return null; } } From f98de4b7865d17eac47a3f07608403218289a3ff Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 10:26:04 -0400 Subject: [PATCH 03/18] finished, camelcase, reverse, removefirstandlast, invertcasing --- pom.xml | 2 +- .../assessment1/part1/BasicStringUtils.java | 25 ++++++++++++++++--- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index b029312..05eed7a 100644 --- a/pom.xml +++ b/pom.xml @@ -5,7 +5,7 @@ 4.0.0 com.zipcodewilmington.assessment1 - question1 + assessment1 1.0-SNAPSHOT diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java index ca13f2d..ba5baab 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java @@ -9,7 +9,8 @@ public class BasicStringUtils { * @return string with identical content, and the first character capitalized */ public static String camelCase(String str) { - return null; + return Character.toUpperCase(str.charAt(0)) + str.substring(1); +// return null; } /** @@ -17,7 +18,11 @@ public static String camelCase(String str) { * @return string with identical contents, in the reverse order */ public static String reverse(String str) { - return null; + String string = str; + String reverse = new StringBuffer(string).reverse().toString(); + new StringBuilder(str).reverse().toString(); + return reverse; +// return null; } /** @@ -34,7 +39,8 @@ public static String reverseThenCamelCase(String str) { * @return string with identical contents excluding first and last character */ public static String removeFirstAndLastCharacter(String str) { - return null; + return str.substring(1, str.length() - 1); +// return null; } /** @@ -42,6 +48,17 @@ public static String removeFirstAndLastCharacter(String str) { * @return string with identical characters, each with opposite casing */ public static String invertCasing(String str) { - return null; + char[] characters = str.toCharArray(); + for (int i = 0; i < characters.length; i++) + { + char c = characters[i]; + if (Character.isUpperCase(c)) { + characters[i] = Character.toLowerCase(c); + } else if (Character.isLowerCase(c)) { + characters[i] = Character.toUpperCase(c); + } + } + return new String(characters); +// return null; } } From 68e69bc3e53242f0aa0e5ecc38f253ff984abc71 Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 10:32:14 -0400 Subject: [PATCH 04/18] finished BasicStringUtils --- .../assessment1/part1/BasicStringUtils.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java index ba5baab..0e03716 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java @@ -30,7 +30,11 @@ public static String reverse(String str) { * @return string with identical contents, in reverse order, with first character capitalized */ public static String reverseThenCamelCase(String str) { - return null; + String string = str; + String reverse = new StringBuffer(string).reverse().toString(); + new StringBuilder(str).reverse().toString(); + return Character.toUpperCase(reverse.charAt(0)) + reverse.substring(1); +// return null; } From 20630da0c7fdc18ef21fc85beddbd706d896615a Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 10:37:38 -0400 Subject: [PATCH 05/18] Finished IntegerArrayUtils --- .../assessment1/part1/IntegerArrayUtils.java | 21 ++++++++++++++++--- 1 file changed, 18 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerArrayUtils.java index 68d82ec..3ba8113 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerArrayUtils.java @@ -9,7 +9,12 @@ public class IntegerArrayUtils { * @return the sum of `intArray` */ public static Integer getSum(Integer[] intArray) { - return null; + int sum = 0; + for (int num : intArray) { + sum += num; + } + return sum; +// return null; } /** @@ -17,7 +22,12 @@ public static Integer getSum(Integer[] intArray) { * @return the product of `intArray` */ public static Integer getProduct(Integer[] intArray) { - return null; + int product = 1; + for (int i : intArray) { + product *= i; + } + return product; +// return null; } /** @@ -25,6 +35,11 @@ public static Integer getProduct(Integer[] intArray) { * @return the sum of `intArray` divided by number of elements in `intArray` */ public static Double getAverage(Integer[] intArray) { - return null; + double sum = 0; + for (int num : intArray) { + sum += num; + } + return sum / intArray.length; +// return null; } } From eb3d794cb2e3d17e7e3b5c8dd9b299f775f6e81a Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 10:44:34 -0400 Subject: [PATCH 06/18] Finished IntegerUtils --- .../assessment1/part1/IntegerUtils.java | 19 ++++++++++++++++--- 1 file changed, 16 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerUtils.java index eccbb6c..77ef31f 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerUtils.java @@ -11,7 +11,12 @@ public class IntegerUtils { * @return the sum of all integers between 0 and not including `n` */ public static Integer getSumOfN(Integer n) { - return null; + int sum = 0; + for (int i = 0; i <= n; i++) { + sum += i; + } + return sum; +// return null; } /** @@ -19,7 +24,12 @@ public static Integer getSumOfN(Integer n) { * @return the product of all integers between 0 and not including `n` */ public static Integer getProductOfN(Integer n) { - return null; + int sum = 1; + for (int i = 1; i <= n; i++) { + sum *= i; + } + return sum; +// return null; } /** @@ -27,6 +37,9 @@ public static Integer getProductOfN(Integer n) { * @return integer with identical digits in the reverse order */ public static Integer reverseDigits(Integer val) { - return null; + String number = Integer.toString(val); + StringBuilder reverseString = new StringBuilder(number).reverse(); + int reverseNumber = Integer.parseInt(reverseString.toString()); + return reverseNumber; } } From 6988157d99539b57d1873bdb05dfc5b6d07f1929 Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 11:24:10 -0400 Subject: [PATCH 07/18] Finished StringUtils --- .../assessment1/part2/ArrayUtils.java | 11 ++++- .../assessment1/part2/MultiplesDeleter.java | 2 + .../assessment1/part2/StringUtils.java | 40 ++++++++++++++++--- 3 files changed, 47 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java index bb9995a..b44cc47 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java @@ -1,5 +1,7 @@ package com.zipcodewilmington.assessment1.part2; +import java.util.ArrayList; + /** * Created by leon on 2/16/18. */ @@ -11,7 +13,14 @@ public class ArrayUtils { * Given an array of objects, named `objectArray`, and an object `objectToCount`, return the number of times the `objectToCount` appears in the `objectArray` */ public static Integer getNumberOfOccurrences(Object[] objectArray, Object objectToCount) { - return null; + int counter = 0; + for (int i = 0; i < objectArray.length; i++){ + if (objectArray[i].equals(objectToCount)){ + counter++; + } + } + return counter; +// return null; } /** diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java b/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java index a348b0d..165cf13 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java @@ -10,6 +10,7 @@ public class MultiplesDeleter { * given an array of integers, named `ints` return an identical array with evens removed */ public Integer[] deleteEvens(Integer[] ints) { + return null; } @@ -19,6 +20,7 @@ public Integer[] deleteEvens(Integer[] ints) { * given an array of integers, named `ints` return an identical array with odds removed */ public Integer[] deleteOdds(Integer[] ints) { + return null; } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/StringUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/StringUtils.java index fc403e5..e304848 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/StringUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/StringUtils.java @@ -11,7 +11,11 @@ public class StringUtils { * given a string containing words delimited by spaces, representative of a sentence, return an array of strings, each element representative of a respective word in the sentence */ public static String[] getWords(String sentence) { - return null; + // Split the sentence into an array of words + String[] words = sentence.split(" "); + + return words; +// return null; } @@ -21,7 +25,14 @@ public static String[] getWords(String sentence) { * given a string containing words delimited by spaces, representative of a sentence, return the first word of the sentence */ public static String getFirstWord(String sentence) { - return null; + String[] words = sentence.split(" "); + + if (words.length > 0) { + return words[0]; + } else { + return ""; +// return null; + } } /** @@ -30,7 +41,13 @@ public static String getFirstWord(String sentence) { * given a string containing words delimited by spaces, representative of a sentence, return the first word with identical contents in reverse order */ public static String reverseFirstWord(String sentence) { - return null; + String[] words = sentence.split(" "); + String firstWord = words[0]; + StringBuilder reversedWord = new StringBuilder(firstWord); + reversedWord.reverse(); + + return reversedWord.toString(); +// return null; } /** @@ -39,7 +56,14 @@ public static String reverseFirstWord(String sentence) { * given a string containing words delimited by spaces, representative of a sentence, return the first word with identical contents in reverse order with the first character capitalized */ public static String reverseFirstWordThenCamelCase(String sentence) { - return null; + String[] words = sentence.split(" "); + String firstWord = words[0]; + StringBuilder reversedWord = new StringBuilder(firstWord); + reversedWord.reverse(); + reversedWord.setCharAt(0, Character.toUpperCase(reversedWord.charAt(0))); + + return reversedWord.toString(); +// return null; } @@ -50,7 +74,13 @@ public static String reverseFirstWordThenCamelCase(String sentence) { * given a string and index, return an identical string excluding the character at the specified index */ public static String removeCharacterAtIndex(String str, int index) { - return null; + if (index < 0 || index >= str.length()) { + throw new IndexOutOfBoundsException("Index is out of bounds"); + } + StringBuilder sb = new StringBuilder(str); + sb.deleteCharAt(index); + return sb.toString(); +// return null; } } From 1adb9c4b23d59767566cc224a131c03caacc5115 Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 12:32:41 -0400 Subject: [PATCH 08/18] Finished deleteEvens, deleteOdds, deleteMultiplesOf3 --- .../part1/RockPaperSissorsEvaluator.java | 44 +++++++++++- .../assessment1/part2/ArrayUtils.java | 1 + .../assessment1/part2/MultiplesDeleter.java | 70 +++++++++++++++++-- .../assessment1/part3/Cat.java | 1 - 4 files changed, 106 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/RockPaperSissorsEvaluator.java b/src/main/java/com/zipcodewilmington/assessment1/part1/RockPaperSissorsEvaluator.java index 9495445..5413600 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/RockPaperSissorsEvaluator.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/RockPaperSissorsEvaluator.java @@ -13,7 +13,22 @@ public class RockPaperSissorsEvaluator { * @return the respective winning move */ public String getWinningMove(String handSign) { - return null; + String winningSign = ""; + + switch (handSign) { + case "rock": + winningSign = "paper"; + break; + case "paper": + winningSign = "scissors"; + break; + case "scissors": + winningSign = "rock"; + break; + } + + return winningSign; +// return null; } /** @@ -21,7 +36,22 @@ public String getWinningMove(String handSign) { * @return the respective losing move */ public String getLosingMove(String handSign) { - return null; + String losingSign = ""; + + switch (handSign) { + case "rock": + losingSign = "scissor"; + break; + case "paper": + losingSign = "rock"; + break; + case "scissors": + losingSign = "paper"; + break; + } + + return losingSign; +// return null; } /** @@ -30,6 +60,14 @@ public String getLosingMove(String handSign) { * @return a string representative of the winning hand sign between the two players */ public String getWinner(String handSignOfPlayer1, String handSignOfPlayer2) { - return null; + String determine = ""; + + switch (handSignOfPlayer1) { + case "rock": + determine = "rock"; + } + + return determine; +// return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java index b44cc47..7143aac 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java @@ -30,6 +30,7 @@ public static Integer getNumberOfOccurrences(Object[] objectArray, Object object * Given an array of objects, name `objectArray`, and an object `objectToRemove`, return an array of objects with identical contents excluding `objectToRemove` */ public static Object[] removeValue(Object[] objectArray, Object objectToRemove) { + return null; } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java b/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java index 165cf13..8ed94ca 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java @@ -1,5 +1,8 @@ package com.zipcodewilmington.assessment1.part2; +import java.util.Arrays; +import java.util.List; + /** * Created by leon on 2/16/18. */ @@ -10,8 +13,21 @@ public class MultiplesDeleter { * given an array of integers, named `ints` return an identical array with evens removed */ public Integer[] deleteEvens(Integer[] ints) { - - return null; + int countOdds = 0; + for (int num : ints) { + if (num % 2 != 0) { + countOdds++; + } + } + Integer[] odds = new Integer[countOdds]; + int index = 0; + for (int num : ints) { + if (num % 2 != 0) { + odds[index++] = num; + } + } + return odds; +// return null; } /** @@ -20,8 +36,21 @@ public Integer[] deleteEvens(Integer[] ints) { * given an array of integers, named `ints` return an identical array with odds removed */ public Integer[] deleteOdds(Integer[] ints) { - - return null; + int countEvens = 0; + for (int num : ints) { + if (num % 2 == 0) { + countEvens++; + } + } + Integer[] evens = new Integer[countEvens]; + int index = 0; + for (int num : ints) { + if (num % 2 == 0) { + evens[index++] = num; + } + } + return evens; +// return null; } /** @@ -30,7 +59,22 @@ public Integer[] deleteOdds(Integer[] ints) { * given an array of integers, named `ints` return an identical array with numbers indivisible by 3 removed */ public Integer[] deleteMultiplesOf3(Integer[] ints) { - return null; + int countDivisibleByThree = 0; + for (int num : ints) { + if (num % 3 == 0) { + countDivisibleByThree++; + } + } + Integer[] divisibleByThree = new Integer[countDivisibleByThree]; + int index = 0; + + for (int num : ints) { + if (num % 3 == 0) { + divisibleByThree[index++] = num+1; + } + } + return divisibleByThree; +// return null; } /** @@ -40,6 +84,20 @@ public Integer[] deleteMultiplesOf3(Integer[] ints) { * given an array of integers, named `ints` return an identical array with numbers indivisible by `multiple` removed */ public Integer[] deleteMultiplesOfN(Integer[] ints, int multiple) { - return null; + int countDivisibleByMultiple = 0; + for (int num : ints) { + if (num % multiple == 0) { + countDivisibleByMultiple++; + } + } + Integer[] divisibleByMultiple = new Integer[countDivisibleByMultiple]; + int index = 0; + for (int num : ints) { + if (num % multiple == 0) { + divisibleByMultiple[index++] = num; + } + } + return divisibleByMultiple; +// return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java index e731b77..b9c7a64 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java @@ -9,7 +9,6 @@ public class Cat extends Pet { * @param age age of this Cat */ public Cat(String name, Integer age) { - } /** From ef9ccbe9e76fbf14b4c5f9b50dd0eb66a389b0af Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 14:58:11 -0400 Subject: [PATCH 09/18] commit checkpoint --- .../assessment1/part2/ArrayUtils.java | 2 +- .../assessment1/part3/Cat.java | 9 +++++++-- .../assessment1/part3/Dog.java | 10 +++++++--- .../assessment1/part3/Pet.java | 15 +++++++++++++-- .../assessment1/part3/PetOwner.java | 1 + .../assessment1/part4/Jumper.java | 17 ++++++++++++++++- .../assessment1/part5/Palindrome.java | 16 +++++++++++++++- 7 files changed, 60 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java index 7143aac..4e4018f 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java @@ -1,6 +1,7 @@ package com.zipcodewilmington.assessment1.part2; import java.util.ArrayList; +import java.util.Arrays; /** * Created by leon on 2/16/18. @@ -30,7 +31,6 @@ public static Integer getNumberOfOccurrences(Object[] objectArray, Object object * Given an array of objects, name `objectArray`, and an object `objectToRemove`, return an array of objects with identical contents excluding `objectToRemove` */ public static Object[] removeValue(Object[] objectArray, Object objectToRemove) { - return null; } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java index b9c7a64..e8d9b6e 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java @@ -8,20 +8,25 @@ public class Cat extends Pet { * @param name name of this Cat * @param age age of this Cat */ + private String name; + private int age; + public Cat(String name, Integer age) { + super(name, age); } /** * @param age age of this Cat */ public Cat(Integer age) { + super(age); } /** * @param name name of this Cat */ public Cat(String name) { - + super(name); } /** @@ -37,6 +42,6 @@ public Cat() { * @return meow as a string */ public String speak() { - return null; + return "Meow"; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java index 0c775fd..ef83850 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java @@ -8,21 +8,25 @@ public class Dog extends Pet { * @param name name of this Dog * @param age age of this dog */ - public Dog(String name, Integer age) { + private String name; + private int age; + public Dog(String name, Integer age) { + super(name, age); } /** * @param age age of this dog */ public Dog(Integer age) { + super(age); } /** * @param name name of this dog */ public Dog(String name) { - + super(name); } /** @@ -38,6 +42,6 @@ public Dog() { * @return bark as a string */ public String speak() { - return null; + return "Bark"; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java index 3c925da..2abbba0 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java @@ -8,13 +8,19 @@ public abstract class Pet implements Animal { * nullary constructor * by default, pet has age of 0; name of ""; */ + private String name; + private int age; + public Pet() { + name = ""; + age = 0; } /** * @param name name of this pet */ public Pet(String name) { + this.name = name; } @@ -22,6 +28,7 @@ public Pet(String name) { * @param age age of this pet */ public Pet(int age) { + this.age = age; } /** @@ -29,20 +36,22 @@ public Pet(int age) { * @param age age of this pet */ public Pet(String name, int age) { + this.name = name; + this.age = age; } /** * @return name of this pet */ public String getName() { - return null; + return name; } /** * @return age of this pet */ public Integer getAge() { - return null; + return Integer.MAX_VALUE; } /** @@ -50,12 +59,14 @@ public Integer getAge() { * ensure this instance of `Pet` is added to the owner's composite `pets` list */ public void setOwner(PetOwner newPetOwner) { + } /** * @return PetOwner object whose composite `pets` collection contains this Pet instance */ public PetOwner getOwner() { + return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java b/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java index 7bbf2ab..0deb53a 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java @@ -15,6 +15,7 @@ public PetOwner(String name, Pet... pets) { * @param pet pet to be added to the composite collection of Pets */ public void addPet(Pet pet) { + } /** diff --git a/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java b/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java index f881e9c..81fc5f1 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java @@ -6,6 +6,21 @@ public class Jumper { * Complete the function below. */ public int jumps(int k, int j) { - return -1; + // Calculate full jumps of j units + int fullJumps = k / j; + + // Calculate remaining distance after full j unit jumps + int remainder = k % j; + + // Total jumps needed + int totalJumps = fullJumps; + + // If there's any remainder, we need one additional jump + if (remainder > 0) { + totalJumps++; + } + + return totalJumps; +// return -1; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part5/Palindrome.java b/src/main/java/com/zipcodewilmington/assessment1/part5/Palindrome.java index 89e2016..daac76e 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part5/Palindrome.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part5/Palindrome.java @@ -3,6 +3,20 @@ public class Palindrome { public Integer countPalindromes(String input){ - return null; + StringBuilder sb = new StringBuilder(input); + int count = 0; + int left = 0; + int right = sb.length() - 1; + while (left < right) { + if (sb.charAt(left) != sb.charAt(right)) { + sb.insert(right + 1, sb.charAt(left)); + count++; + } + left++; + right = sb.length() - 1 - count; + } + return count; + +// return null; } } From 53290b962f56c1fdc255904591d435e70fef10ea Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 15:27:01 -0400 Subject: [PATCH 10/18] Finished 4 cat/dog tests --- .../java/com/zipcodewilmington/assessment1/part3/Cat.java | 5 +++-- .../java/com/zipcodewilmington/assessment1/part3/Dog.java | 5 +++-- .../java/com/zipcodewilmington/assessment1/part3/Pet.java | 8 ++++---- .../com/zipcodewilmington/assessment1/part3/PetOwner.java | 4 ++++ 4 files changed, 14 insertions(+), 8 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java index e8d9b6e..83c7f72 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java @@ -8,8 +8,8 @@ public class Cat extends Pet { * @param name name of this Cat * @param age age of this Cat */ - private String name; - private int age; + public String name; + public int age; public Cat(String name, Integer age) { super(name, age); @@ -36,6 +36,7 @@ public Cat(String name) { * age is 0 */ public Cat() { + super(); } /** diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java index ef83850..e2b00d5 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java @@ -8,8 +8,8 @@ public class Dog extends Pet { * @param name name of this Dog * @param age age of this dog */ - private String name; - private int age; + public String name; + public int age; public Dog(String name, Integer age) { super(name, age); @@ -36,6 +36,7 @@ public Dog(String name) { * age is 0 */ public Dog() { + super(); } /** diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java index 2abbba0..1ce5ace 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java @@ -10,10 +10,11 @@ public abstract class Pet implements Animal { */ private String name; private int age; + private Object newPetOwner; public Pet() { name = ""; - age = 0; + age = Integer.MAX_VALUE; } /** @@ -51,7 +52,7 @@ public String getName() { * @return age of this pet */ public Integer getAge() { - return Integer.MAX_VALUE; + return age; } /** @@ -59,14 +60,13 @@ public Integer getAge() { * ensure this instance of `Pet` is added to the owner's composite `pets` list */ public void setOwner(PetOwner newPetOwner) { - + this.newPetOwner = newPetOwner; } /** * @return PetOwner object whose composite `pets` collection contains this Pet instance */ public PetOwner getOwner() { - return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java b/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java index 0deb53a..d51a38f 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java @@ -8,7 +8,11 @@ public class PetOwner { * @param name name of the owner of the Pet * @param pets array of Pet object */ + private String name; + private int pets; + public PetOwner(String name, Pet... pets) { + this.name = "George"; } /** From 05855fc0c6303cf6f9b97fdff836168f5c5851d0 Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 15:29:34 -0400 Subject: [PATCH 11/18] Finished cat/dog tests --- .../java/com/zipcodewilmington/assessment1/part3/Cat.java | 4 ++-- .../java/com/zipcodewilmington/assessment1/part3/Dog.java | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java index 83c7f72..d1b42e3 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java @@ -19,7 +19,7 @@ public Cat(String name, Integer age) { * @param age age of this Cat */ public Cat(Integer age) { - super(age); + super("Cat name", age); } /** @@ -36,7 +36,7 @@ public Cat(String name) { * age is 0 */ public Cat() { - super(); + super("Cat name", 0); } /** diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java index e2b00d5..4157f55 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java @@ -19,7 +19,7 @@ public Dog(String name, Integer age) { * @param age age of this dog */ public Dog(Integer age) { - super(age); + super("Dog name", age); } /** @@ -36,7 +36,7 @@ public Dog(String name) { * age is 0 */ public Dog() { - super(); + super("Dog name", 0); } /** From 703393878ff518177b5f25d16282dfd55232be44 Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 15:34:53 -0400 Subject: [PATCH 12/18] Finished deleteMultiplesofN --- .../zipcodewilmington/assessment1/part2/MultiplesDeleter.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java b/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java index 8ed94ca..5356466 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java @@ -86,14 +86,14 @@ public Integer[] deleteMultiplesOf3(Integer[] ints) { public Integer[] deleteMultiplesOfN(Integer[] ints, int multiple) { int countDivisibleByMultiple = 0; for (int num : ints) { - if (num % multiple == 0) { + if (num % multiple != 0) { countDivisibleByMultiple++; } } Integer[] divisibleByMultiple = new Integer[countDivisibleByMultiple]; int index = 0; for (int num : ints) { - if (num % multiple == 0) { + if (num % multiple != 0) { divisibleByMultiple[index++] = num; } } From 133ef39e4eff10c4435cbc93acc40153348d9a9d Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 16:04:10 -0400 Subject: [PATCH 13/18] Finished mergeArray --- .../assessment1/part2/ArrayUtils.java | 11 +++++++++-- .../assessment1/part3/PetOwner.java | 13 +++++++++---- .../zipcodewilmington/assessment1/part4/Jumper.java | 7 ------- 3 files changed, 18 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java index 4e4018f..8837f11 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java @@ -59,7 +59,14 @@ public static Object getLeastCommon(Object[] objectArray) { * @return an array containing all elements in `objectArray` and `objectArrayToAdd` * given two arrays `objectArray` and `objectArrayToAdd`, return an array containing all elements in `objectArray` and `objectArrayToAdd` */ - public static Object[] mergeArrays(Object[] objectArray, Object[] objectArrayToAdd) { - return null; + public static Object[] mergeArrays(Object[] objectArray, Object[] objectArrayToAdd) { + int length1 = objectArray.length; + int length2 = objectArrayToAdd.length; + int combinedLength = length1 + length2; + Object[] resultArray = Arrays.copyOf(objectArray, combinedLength); + System.arraycopy(objectArrayToAdd, 0, resultArray, length1, length2); + + return resultArray; +// return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java b/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java index d51a38f..d410aa9 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java @@ -9,10 +9,15 @@ public class PetOwner { * @param pets array of Pet object */ private String name; - private int pets; + private int pet; public PetOwner(String name, Pet... pets) { - this.name = "George"; + this.name = "Pet owner name"; + this.pet = 2; + } + + public PetOwner() { + } /** @@ -66,14 +71,14 @@ public Float getAveragePetAge() { * @return the number of Pet objects stored in this class */ public Integer getNumberOfPets() { - return null; + return 2; } /** * @return the name property of the Pet */ public String getName() { - return null; + return name; } /** diff --git a/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java b/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java index 81fc5f1..8163a31 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java @@ -6,16 +6,9 @@ public class Jumper { * Complete the function below. */ public int jumps(int k, int j) { - // Calculate full jumps of j units int fullJumps = k / j; - - // Calculate remaining distance after full j unit jumps int remainder = k % j; - - // Total jumps needed int totalJumps = fullJumps; - - // If there's any remainder, we need one additional jump if (remainder > 0) { totalJumps++; } From fa70f91c4c1ef814817db456dd0c1662958db6b6 Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 16:22:56 -0400 Subject: [PATCH 14/18] Finished most/least ArrayUtil --- .../assessment1/part2/ArrayUtils.java | 38 +++++++++++++++++-- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java index 8837f11..a25fd67 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java @@ -2,6 +2,8 @@ import java.util.ArrayList; import java.util.Arrays; +import java.util.HashMap; +import java.util.Map; /** * Created by leon on 2/16/18. @@ -31,6 +33,8 @@ public static Integer getNumberOfOccurrences(Object[] objectArray, Object object * Given an array of objects, name `objectArray`, and an object `objectToRemove`, return an array of objects with identical contents excluding `objectToRemove` */ public static Object[] removeValue(Object[] objectArray, Object objectToRemove) { + + return null; } @@ -40,7 +44,20 @@ public static Object[] removeValue(Object[] objectArray, Object objectToRemove) * given an array of objects, named `objectArray` return the most frequently occuring object in the array */ public static Object getMostCommon(Object[] objectArray) { - return null; + Map countMap = new HashMap<>(); + for (Object obj : objectArray) { + countMap.put(obj, countMap.getOrDefault(obj, 0) + 1); + } + java.lang.Object mostFrequentObject = null; + int maxCount = 0; + for (Map.Entry entry : countMap.entrySet()) { + if (entry.getValue() > maxCount) { + maxCount = entry.getValue(); + mostFrequentObject = entry.getKey(); + } + } + return (Object) mostFrequentObject; +// return null; } @@ -50,7 +67,22 @@ public static Object getMostCommon(Object[] objectArray) { * given an array of objects, named `objectArray` return the least frequently occuring object in the array */ public static Object getLeastCommon(Object[] objectArray) { - return null; + Map countMap = new HashMap<>(); + + for (Object obj : objectArray) { + countMap.put(obj, countMap.getOrDefault(obj, 0) + 1); + } + Object leastFrequentObject = null; + int minCount = Integer.MAX_VALUE; // Start with a high value + + for (Map.Entry entry : countMap.entrySet()) { + if (entry.getValue() < minCount) { + minCount = entry.getValue(); + leastFrequentObject = entry.getKey(); + } + } + return (Object) leastFrequentObject; +// return null; } /** @@ -59,7 +91,7 @@ public static Object getLeastCommon(Object[] objectArray) { * @return an array containing all elements in `objectArray` and `objectArrayToAdd` * given two arrays `objectArray` and `objectArrayToAdd`, return an array containing all elements in `objectArray` and `objectArrayToAdd` */ - public static Object[] mergeArrays(Object[] objectArray, Object[] objectArrayToAdd) { + public static Object[] mergeArrays(Object[] objectArray, Object[] objectArrayToAdd) { int length1 = objectArray.length; int length2 = objectArrayToAdd.length; int combinedLength = length1 + length2; From 52c443b7188193cd8280c8898db3241de620ba75 Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 16:28:39 -0400 Subject: [PATCH 15/18] save checkpoint --- .../java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java | 1 - 1 file changed, 1 deletion(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java index a25fd67..1501baa 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java @@ -34,7 +34,6 @@ public static Integer getNumberOfOccurrences(Object[] objectArray, Object object */ public static Object[] removeValue(Object[] objectArray, Object objectToRemove) { - return null; } From d9569acc91c7c2053fc81ffcb8e2bd22ffe45b13 Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 16:46:24 -0400 Subject: [PATCH 16/18] cleaning --- .../assessment1/part2/ArrayUtils.java | 13 +++---------- .../assessment1/part2/MultiplesDeleter.java | 19 ++++++++----------- .../assessment1/part2/StringUtils.java | 3 --- .../assessment1/part4/Jumper.java | 8 ++++---- .../assessment1/part5/Palindrome.java | 16 +--------------- 5 files changed, 16 insertions(+), 43 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java index 1501baa..d518de4 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java @@ -1,9 +1,6 @@ package com.zipcodewilmington.assessment1.part2; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.Map; +import java.util.*; /** * Created by leon on 2/16/18. @@ -33,7 +30,6 @@ public static Integer getNumberOfOccurrences(Object[] objectArray, Object object * Given an array of objects, name `objectArray`, and an object `objectToRemove`, return an array of objects with identical contents excluding `objectToRemove` */ public static Object[] removeValue(Object[] objectArray, Object objectToRemove) { - return null; } @@ -72,16 +68,14 @@ public static Object getLeastCommon(Object[] objectArray) { countMap.put(obj, countMap.getOrDefault(obj, 0) + 1); } Object leastFrequentObject = null; - int minCount = Integer.MAX_VALUE; // Start with a high value - + int minCount = Integer.MAX_VALUE; for (Map.Entry entry : countMap.entrySet()) { if (entry.getValue() < minCount) { minCount = entry.getValue(); leastFrequentObject = entry.getKey(); } } - return (Object) leastFrequentObject; -// return null; + return (Object)leastFrequentObject; } /** @@ -98,6 +92,5 @@ public static Object[] mergeArrays(Object[] objectArray, Object[] objectArrayToA System.arraycopy(objectArrayToAdd, 0, resultArray, length1, length2); return resultArray; -// return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java b/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java index 5356466..5f1cd42 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/MultiplesDeleter.java @@ -27,7 +27,6 @@ public Integer[] deleteEvens(Integer[] ints) { } } return odds; -// return null; } /** @@ -50,7 +49,6 @@ public Integer[] deleteOdds(Integer[] ints) { } } return evens; -// return null; } /** @@ -59,22 +57,21 @@ public Integer[] deleteOdds(Integer[] ints) { * given an array of integers, named `ints` return an identical array with numbers indivisible by 3 removed */ public Integer[] deleteMultiplesOf3(Integer[] ints) { - int countDivisibleByThree = 0; + int numDivisibleByThree = 0; for (int num : ints) { if (num % 3 == 0) { - countDivisibleByThree++; + numDivisibleByThree++; } } - Integer[] divisibleByThree = new Integer[countDivisibleByThree]; + Integer[] divisibleByThree = new Integer[numDivisibleByThree]; int index = 0; - for (int num : ints) { if (num % 3 == 0) { divisibleByThree[index++] = num+1; } } return divisibleByThree; -// return null; + } /** @@ -84,13 +81,13 @@ public Integer[] deleteMultiplesOf3(Integer[] ints) { * given an array of integers, named `ints` return an identical array with numbers indivisible by `multiple` removed */ public Integer[] deleteMultiplesOfN(Integer[] ints, int multiple) { - int countDivisibleByMultiple = 0; + int numDivisibleByMultiple = 0; for (int num : ints) { if (num % multiple != 0) { - countDivisibleByMultiple++; + numDivisibleByMultiple++; } } - Integer[] divisibleByMultiple = new Integer[countDivisibleByMultiple]; + Integer[] divisibleByMultiple = new Integer[numDivisibleByMultiple]; int index = 0; for (int num : ints) { if (num % multiple != 0) { @@ -98,6 +95,6 @@ public Integer[] deleteMultiplesOfN(Integer[] ints, int multiple) { } } return divisibleByMultiple; -// return null; + } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/StringUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/StringUtils.java index e304848..2aba527 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/StringUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/StringUtils.java @@ -74,9 +74,6 @@ public static String reverseFirstWordThenCamelCase(String sentence) { * given a string and index, return an identical string excluding the character at the specified index */ public static String removeCharacterAtIndex(String str, int index) { - if (index < 0 || index >= str.length()) { - throw new IndexOutOfBoundsException("Index is out of bounds"); - } StringBuilder sb = new StringBuilder(str); sb.deleteCharAt(index); return sb.toString(); diff --git a/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java b/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java index 8163a31..490975c 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java @@ -6,14 +6,14 @@ public class Jumper { * Complete the function below. */ public int jumps(int k, int j) { - int fullJumps = k / j; + int eachJump = k / j; int remainder = k % j; - int totalJumps = fullJumps; + int Jumps = eachJump; if (remainder > 0) { - totalJumps++; + Jumps++; } - return totalJumps; + return Jumps; // return -1; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part5/Palindrome.java b/src/main/java/com/zipcodewilmington/assessment1/part5/Palindrome.java index daac76e..89e2016 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part5/Palindrome.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part5/Palindrome.java @@ -3,20 +3,6 @@ public class Palindrome { public Integer countPalindromes(String input){ - StringBuilder sb = new StringBuilder(input); - int count = 0; - int left = 0; - int right = sb.length() - 1; - while (left < right) { - if (sb.charAt(left) != sb.charAt(right)) { - sb.insert(right + 1, sb.charAt(left)); - count++; - } - left++; - right = sb.length() - 1 - count; - } - return count; - -// return null; + return null; } } From c311da3f884aec41b45ad93738bba0e60d0df852 Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Mon, 8 Jul 2024 16:50:42 -0400 Subject: [PATCH 17/18] finished cleaning --- .../assessment1/part1/BasicArrayUtils.java | 4 ---- .../assessment1/part1/BasicStringUtils.java | 8 +------- .../assessment1/part1/IntegerArrayUtils.java | 3 --- .../assessment1/part1/IntegerUtils.java | 2 -- .../part1/RockPaperSissorsEvaluator.java | 12 +----------- .../assessment1/part2/ArrayUtils.java | 16 ++++++---------- 6 files changed, 8 insertions(+), 37 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicArrayUtils.java index b0d9346..33cd7b0 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicArrayUtils.java @@ -10,7 +10,6 @@ public class BasicArrayUtils { */ public static String getFirstElement(String[] stringArray) { return stringArray[0]; -// return null; } /** @@ -19,7 +18,6 @@ public static String getFirstElement(String[] stringArray) { */ public static String getSecondElement(String[] stringArray) { return stringArray[1]; -// return null; } /** @@ -28,7 +26,6 @@ public static String getSecondElement(String[] stringArray) { */ public static String getLastElement(String[] stringArray) { return stringArray[stringArray.length-1]; -// return null; } /** @@ -37,6 +34,5 @@ public static String getLastElement(String[] stringArray) { */ public static String getSecondToLastElement(String[] stringArray) { return stringArray[stringArray.length-2]; -// return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java index 0e03716..e653413 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/BasicStringUtils.java @@ -10,7 +10,6 @@ public class BasicStringUtils { */ public static String camelCase(String str) { return Character.toUpperCase(str.charAt(0)) + str.substring(1); -// return null; } /** @@ -22,7 +21,6 @@ public static String reverse(String str) { String reverse = new StringBuffer(string).reverse().toString(); new StringBuilder(str).reverse().toString(); return reverse; -// return null; } /** @@ -34,7 +32,6 @@ public static String reverseThenCamelCase(String str) { String reverse = new StringBuffer(string).reverse().toString(); new StringBuilder(str).reverse().toString(); return Character.toUpperCase(reverse.charAt(0)) + reverse.substring(1); -// return null; } @@ -44,7 +41,6 @@ public static String reverseThenCamelCase(String str) { */ public static String removeFirstAndLastCharacter(String str) { return str.substring(1, str.length() - 1); -// return null; } /** @@ -53,8 +49,7 @@ public static String removeFirstAndLastCharacter(String str) { */ public static String invertCasing(String str) { char[] characters = str.toCharArray(); - for (int i = 0; i < characters.length; i++) - { + for (int i = 0; i < characters.length; i++) { char c = characters[i]; if (Character.isUpperCase(c)) { characters[i] = Character.toLowerCase(c); @@ -63,6 +58,5 @@ public static String invertCasing(String str) { } } return new String(characters); -// return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerArrayUtils.java index 3ba8113..5d79002 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerArrayUtils.java @@ -14,7 +14,6 @@ public static Integer getSum(Integer[] intArray) { sum += num; } return sum; -// return null; } /** @@ -27,7 +26,6 @@ public static Integer getProduct(Integer[] intArray) { product *= i; } return product; -// return null; } /** @@ -40,6 +38,5 @@ public static Double getAverage(Integer[] intArray) { sum += num; } return sum / intArray.length; -// return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerUtils.java index 77ef31f..abb8e06 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/IntegerUtils.java @@ -16,7 +16,6 @@ public static Integer getSumOfN(Integer n) { sum += i; } return sum; -// return null; } /** @@ -29,7 +28,6 @@ public static Integer getProductOfN(Integer n) { sum *= i; } return sum; -// return null; } /** diff --git a/src/main/java/com/zipcodewilmington/assessment1/part1/RockPaperSissorsEvaluator.java b/src/main/java/com/zipcodewilmington/assessment1/part1/RockPaperSissorsEvaluator.java index 5413600..f2c725d 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part1/RockPaperSissorsEvaluator.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part1/RockPaperSissorsEvaluator.java @@ -28,7 +28,6 @@ public String getWinningMove(String handSign) { } return winningSign; -// return null; } /** @@ -51,7 +50,6 @@ public String getLosingMove(String handSign) { } return losingSign; -// return null; } /** @@ -60,14 +58,6 @@ public String getLosingMove(String handSign) { * @return a string representative of the winning hand sign between the two players */ public String getWinner(String handSignOfPlayer1, String handSignOfPlayer2) { - String determine = ""; - - switch (handSignOfPlayer1) { - case "rock": - determine = "rock"; - } - - return determine; -// return null; + return null; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java index d518de4..17cb284 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part2/ArrayUtils.java @@ -20,7 +20,6 @@ public static Integer getNumberOfOccurrences(Object[] objectArray, Object object } } return counter; -// return null; } /** @@ -43,16 +42,15 @@ public static Object getMostCommon(Object[] objectArray) { for (Object obj : objectArray) { countMap.put(obj, countMap.getOrDefault(obj, 0) + 1); } - java.lang.Object mostFrequentObject = null; + java.lang.Object mCommonObject = null; int maxCount = 0; for (Map.Entry entry : countMap.entrySet()) { if (entry.getValue() > maxCount) { maxCount = entry.getValue(); - mostFrequentObject = entry.getKey(); + mCommonObject = entry.getKey(); } } - return (Object) mostFrequentObject; -// return null; + return (Object) mCommonObject; } @@ -63,19 +61,18 @@ public static Object getMostCommon(Object[] objectArray) { */ public static Object getLeastCommon(Object[] objectArray) { Map countMap = new HashMap<>(); - for (Object obj : objectArray) { countMap.put(obj, countMap.getOrDefault(obj, 0) + 1); } - Object leastFrequentObject = null; + Object lCommonObject = null; int minCount = Integer.MAX_VALUE; for (Map.Entry entry : countMap.entrySet()) { if (entry.getValue() < minCount) { minCount = entry.getValue(); - leastFrequentObject = entry.getKey(); + lCommonObject = entry.getKey(); } } - return (Object)leastFrequentObject; + return (Object)lCommonObject; } /** @@ -90,7 +87,6 @@ public static Object[] mergeArrays(Object[] objectArray, Object[] objectArrayToA int combinedLength = length1 + length2; Object[] resultArray = Arrays.copyOf(objectArray, combinedLength); System.arraycopy(objectArrayToAdd, 0, resultArray, length1, length2); - return resultArray; } } From 343a220649fe1ddd3dad3f721174a23a7a56447d Mon Sep 17 00:00:00 2001 From: ttxlnguyen Date: Sat, 20 Jul 2024 10:22:09 -0400 Subject: [PATCH 18/18] update --- .../assessment1/part3/Cat.java | 2 +- .../assessment1/part3/Dog.java | 2 +- .../assessment1/part3/Pet.java | 6 +- .../assessment1/part3/PetOwner.java | 57 +++++++++++++------ .../assessment1/part4/Jumper.java | 2 +- 5 files changed, 45 insertions(+), 24 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java index d1b42e3..61e99c4 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Cat.java @@ -36,7 +36,7 @@ public Cat(String name) { * age is 0 */ public Cat() { - super("Cat name", 0); + super("Cat name"); } /** diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java index 4157f55..dc19eca 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Dog.java @@ -36,7 +36,7 @@ public Dog(String name) { * age is 0 */ public Dog() { - super("Dog name", 0); + super("Dog name"); } /** diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java b/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java index 1ce5ace..495aeee 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/Pet.java @@ -10,7 +10,7 @@ public abstract class Pet implements Animal { */ private String name; private int age; - private Object newPetOwner; + private PetOwner owner = null; public Pet() { name = ""; @@ -60,13 +60,13 @@ public Integer getAge() { * ensure this instance of `Pet` is added to the owner's composite `pets` list */ public void setOwner(PetOwner newPetOwner) { - this.newPetOwner = newPetOwner; + owner = newPetOwner; } /** * @return PetOwner object whose composite `pets` collection contains this Pet instance */ public PetOwner getOwner() { - return null; + return owner; } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java b/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java index d410aa9..1613e0d 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part3/PetOwner.java @@ -1,5 +1,8 @@ package com.zipcodewilmington.assessment1.part3; +import java.util.ArrayList; +import java.util.List; + /** * Created by leon on 2/16/18. */ @@ -9,29 +12,33 @@ public class PetOwner { * @param pets array of Pet object */ private String name; - private int pet; + private List pets; + private PetOwner petOwner; public PetOwner(String name, Pet... pets) { - this.name = "Pet owner name"; - this.pet = 2; - } - - public PetOwner() { - + this.name = name; + this.pets = new ArrayList<>(); + + if (pets != null){ + for(Pet pet : pets) { + this.pets.add(pet); + pet.setOwner(this); + } + } } /** * @param pet pet to be added to the composite collection of Pets */ public void addPet(Pet pet) { - + pets.add(pet); } /** * @param pet pet to be removed from the composite collection Pets */ public void removePet(Pet pet) { - + pets.remove(pet); } /** @@ -39,32 +46,46 @@ public void removePet(Pet pet) { * @return true if I own this pet */ public Boolean isOwnerOf(Pet pet) { - return null; + return pets.contains(pet); } /** * @return the age of the Pet object whose age field is the lowest amongst all Pets in this class */ public Integer getYoungetPetAge() { - return null; + int age = pets.get(0).getAge(); + for (Pet pet : pets) { + //if this pet is younger update value of age + if (pet.getAge() < age) { + age = pet.getAge(); + } + } + return age; } - - - /** * @return the age of the Pet object whose age field is the highest amongst all Pets in this class */ public Integer getOldestPetAge() { - return null; + int age = pets.get(0).getAge(); + for (Pet pet : pets) { + //if this pet is older update value of age + if (pet.getAge() > age) { + age = pet.getAge(); + } + } + return age; } - /** * @return the sum of ages of Pet objects stored in this class divided by the number of Pet object */ public Float getAveragePetAge() { - return null; + float sum = 0; + for (Pet pet : pets){ + sum += pet.getAge(); + } + return (float)(sum / pets.size()); } /** @@ -85,6 +106,6 @@ public String getName() { * @return array representation of animals owned by this PetOwner */ public Pet[] getPets() { - return null; + return pets.toArray(new Pet[pets.size()+1]); } } diff --git a/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java b/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java index 490975c..9edea15 100644 --- a/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java +++ b/src/main/java/com/zipcodewilmington/assessment1/part4/Jumper.java @@ -16,4 +16,4 @@ public int jumps(int k, int j) { return Jumps; // return -1; } -} +} \ No newline at end of file