From 398e47951d6039e4de2b5f8b141439eabe412b9e Mon Sep 17 00:00:00 2001 From: laura Date: Sat, 3 Jul 2021 13:46:33 -0400 Subject: [PATCH 1/8] arays, array list --- pom.xml | 12 ++ .../zipcodewilmington/StringArrayUtils.java | 131 ++++++++++++++++-- 2 files changed, 133 insertions(+), 10 deletions(-) diff --git a/pom.xml b/pom.xml index d10c35e..991cf63 100644 --- a/pom.xml +++ b/pom.xml @@ -7,6 +7,18 @@ com.zipcodewilmington.labs arrayutils 1.0-SNAPSHOT + + + + org.apache.maven.plugins + maven-compiler-plugin + + 11 + 11 + + + + junit diff --git a/src/main/java/com/zipcodewilmington/StringArrayUtils.java b/src/main/java/com/zipcodewilmington/StringArrayUtils.java index 4bcce66..97553d6 100644 --- a/src/main/java/com/zipcodewilmington/StringArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/StringArrayUtils.java @@ -1,5 +1,8 @@ package com.zipcodewilmington; +import java.lang.reflect.Array; +import java.util.*; + /** * Created by leon on 1/29/18. */ @@ -9,6 +12,7 @@ public class StringArrayUtils { * @return first element of specified array */ // TODO public static String getFirstElement(String[] array) { + return array[0]; } @@ -17,6 +21,7 @@ public static String getFirstElement(String[] array) { * @return second element in specified array */ public static String getSecondElement(String[] array) { + return array[1]; } @@ -25,7 +30,10 @@ public static String getSecondElement(String[] array) { * @return last element in specified array */ // TODO public static String getLastElement(String[] array) { - return null; + String lastone = array[array.length-1]; + return lastone; + + } /** @@ -33,7 +41,9 @@ public static String getLastElement(String[] array) { * @return second to last element in specified array */ // TODO public static String getSecondToLastElement(String[] array) { - return null; + + String secLast = array[array.length - 2]; + return secLast; } /** @@ -42,7 +52,15 @@ public static String getSecondToLastElement(String[] array) { * @return true if the array contains the specified `value` */ // TODO public static boolean contains(String[] array, String value) { + + for (int i = 0; i < array.length; i++) { + if (array[i] == value) { + return true; + } + } return false; + + } /** @@ -50,7 +68,14 @@ public static boolean contains(String[] array, String value) { * @return an array with identical contents in reverse order */ // TODO public static String[] reverse(String[] array) { - return null; + + + List list = Arrays.asList(array); + Collections.reverse(list); + String[] reversedList = list.toArray(array); + return reversedList; + + } /** @@ -58,7 +83,15 @@ public static String[] reverse(String[] array) { * @return true if the order of the array is the same backwards and forwards */ // TODO public static boolean isPalindromic(String[] array) { - return false; + + for (int i = 0; i < array.length; i++) { + if (array[i] != array[array.length - (i + 1)]) { + return false; + } + } + + return true; + } /** @@ -66,16 +99,40 @@ public static boolean isPalindromic(String[] array) { * @return true if each letter in the alphabet has been used in the array */ // TODO public static boolean isPangramic(String[] array) { - return false; + + ArrayList StringOfArrays = new ArrayList(Arrays.asList(array)); + String newString = StringOfArrays.toString().toLowerCase(); + String abc = "abcdefghigklmnopqrstuvwxyz"; + for (int i = 0; i < abc.length(); i++) { + + if (newString.indexOf(abc.charAt(i)) == -1) { + return false; + } + } + return true; } + + /** * @param array array of String objects * @param value value to check array for * @return number of occurrences the specified `value` has occurred */ // TODO public static int getNumberOfOccurrences(String[] array, String value) { - return 0; + + + int count = 0; + for (int i = 0; i < array.length; i++) { + if (value.equals(array[i])) { + count++; + } + //return 0; + } + return count; + + + //return 0; } /** @@ -84,7 +141,12 @@ public static int getNumberOfOccurrences(String[] array, String value) { * @return array with identical contents excluding values of `value` */ // TODO public static String[] removeValue(String[] array, String valueToRemove) { - return null; + + List newList = new ArrayList(Arrays.asList(array)); + newList.remove(valueToRemove); + array = newList.toArray((new String[0])); + return array; + } /** @@ -92,7 +154,21 @@ public static String[] removeValue(String[] array, String valueToRemove) { * @return array of Strings with consecutive duplicates removes */ // TODO public static String[] removeConsecutiveDuplicates(String[] array) { - return null; + + ArrayList newList = new ArrayList(); + + newList.add(array[0]); + + + + for (int i = 1; i < array.length; i ++ ){ + if(array[i] != array[ i- 1]){ + + newList.add(array[i]); + } + } + + return newList.toArray(new String[newList.size()]); } /** @@ -100,8 +176,43 @@ public static String[] removeConsecutiveDuplicates(String[] array) { * @return array of Strings with each consecutive duplicate occurrence concatenated as a single string in an array of Strings */ // TODO public static String[] packConsecutiveDuplicates(String[] array) { - return null; + //ArrayList newList = new ArrayList(); + int length = array.length; + int lastIndex = 0; + ArrayList newList = new ArrayList(); + newList.add(array[0]); + + for (int i = 1; i < array.length; i++) { + if (newList.get(lastIndex).contains(array[i])) { // used .contains cuz aa != a + newList.set(lastIndex, (newList.get(lastIndex) + array[i])); + } else { + lastIndex++; + newList.add(array[i]); + } + + // return newList.toArray(new String[0]); + } + return newList.toArray(new String[0]); + + } + } +//return newList.toArray(new String[0]); + + + + +//ArrayList list = new ArrayList<>(); +// add package and drop class there + /* newList.add(array[0]); + for (int i = 1; i < array.length; i ++){ + if (array [1] == array[i-1]) { + newList.add(array[i]); + } + } + + return newList.toArray(new String [newList.size()]);*/ + + -} From 5061293a72e2b18925526e90ab6ee2079b59f384 Mon Sep 17 00:00:00 2001 From: laura Date: Thu, 29 Jul 2021 17:59:26 -0400 Subject: [PATCH 2/8] send --- .../zipcodewilmington/StringArrayUtils.java | 24 ++++--------------- 1 file changed, 4 insertions(+), 20 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/StringArrayUtils.java b/src/main/java/com/zipcodewilmington/StringArrayUtils.java index 97553d6..b5f02ec 100644 --- a/src/main/java/com/zipcodewilmington/StringArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/StringArrayUtils.java @@ -132,7 +132,6 @@ public static int getNumberOfOccurrences(String[] array, String value) { return count; - //return 0; } /** @@ -156,18 +155,14 @@ public static String[] removeValue(String[] array, String valueToRemove) { public static String[] removeConsecutiveDuplicates(String[] array) { ArrayList newList = new ArrayList(); - newList.add(array[0]); - - for (int i = 1; i < array.length; i ++ ){ if(array[i] != array[ i- 1]){ newList.add(array[i]); } } - return newList.toArray(new String[newList.size()]); } @@ -178,15 +173,15 @@ public static String[] removeConsecutiveDuplicates(String[] array) { public static String[] packConsecutiveDuplicates(String[] array) { //ArrayList newList = new ArrayList(); int length = array.length; - int lastIndex = 0; + int current = 0; // THE LAST INDEX ArrayList newList = new ArrayList(); newList.add(array[0]); for (int i = 1; i < array.length; i++) { - if (newList.get(lastIndex).contains(array[i])) { // used .contains cuz aa != a - newList.set(lastIndex, (newList.get(lastIndex) + array[i])); + if (newList.get(current).contains(array[i])) { // used .contains Insted of .charAt() cuz aa != a + newList.set(current, (newList.get(current) + array[i])); } else { - lastIndex++; + current++; newList.add(array[i]); } @@ -198,21 +193,10 @@ public static String[] packConsecutiveDuplicates(String[] array) { } -//return newList.toArray(new String[0]); - -//ArrayList list = new ArrayList<>(); -// add package and drop class there - /* newList.add(array[0]); - for (int i = 1; i < array.length; i ++){ - if (array [1] == array[i-1]) { - newList.add(array[i]); - } - } - return newList.toArray(new String [newList.size()]);*/ From 5bf04fb2dd9c998d1a4c2ce23309eb2bb749b2b8 Mon Sep 17 00:00:00 2001 From: laura Date: Thu, 29 Jul 2021 22:38:31 -0400 Subject: [PATCH 3/8] fixed --- .../zipcodewilmington/StringArrayUtils.java | 47 ++++++++++++++----- 1 file changed, 34 insertions(+), 13 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/StringArrayUtils.java b/src/main/java/com/zipcodewilmington/StringArrayUtils.java index b5f02ec..9eb6d4d 100644 --- a/src/main/java/com/zipcodewilmington/StringArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/StringArrayUtils.java @@ -92,6 +92,8 @@ public static boolean isPalindromic(String[] array) { return true; +// String[] arrBackwards = StringArrayUtils.reverse(array); // only pass 2/3 test +// return (Arrays.equals(array, arrBackwards)); } /** @@ -100,16 +102,27 @@ public static boolean isPalindromic(String[] array) { */ // TODO public static boolean isPangramic(String[] array) { - ArrayList StringOfArrays = new ArrayList(Arrays.asList(array)); - String newString = StringOfArrays.toString().toLowerCase(); - String abc = "abcdefghigklmnopqrstuvwxyz"; - for (int i = 0; i < abc.length(); i++) { - - if (newString.indexOf(abc.charAt(i)) == -1) { - return false; - } +// ArrayList StringOfArrays = new ArrayList(Arrays.asList(array)); +// String newString = StringOfArrays.toString().toLowerCase(); +// String abc = "abcdefghigklmnopqrstuvwxyz"; +// for (int i = 0; i < abc.length(); i++) { +// +// if (newString.indexOf(abc.charAt(i)) == -1) { +// return false; +// } +// } +// return true; + + boolean siOno = true; + String[] abc = "abcdefghijklmnopqrstuvwxyz ,".split(""); + String arrString = Arrays.toString(array).toLowerCase(); + + for (String element : abc){ + if (!arrString.contains(element)) + siOno = false; } - return true; + return siOno; + } @@ -140,11 +153,19 @@ public static int getNumberOfOccurrences(String[] array, String value) { * @return array with identical contents excluding values of `value` */ // TODO public static String[] removeValue(String[] array, String valueToRemove) { +// +// List newList = new ArrayList(Arrays.asList(array)); +// newList.remove(valueToRemove); +// array = newList.toArray((new String[0])); +// return array; + + List listArr = new ArrayList(Arrays.asList(array)); + listArr.remove(valueToRemove); + + String[] newArray = new String[listArr.size()]; //passing content to array + newArray = listArr.toArray(newArray); - List newList = new ArrayList(Arrays.asList(array)); - newList.remove(valueToRemove); - array = newList.toArray((new String[0])); - return array; + return newArray; } From 7ea0923d85598a4357198ef070bd1b29ed90ac33 Mon Sep 17 00:00:00 2001 From: laura Date: Sat, 31 Jul 2021 19:05:48 -0400 Subject: [PATCH 4/8] fixed --- .../zipcodewilmington/StringArrayUtils.java | 64 +++++++++++-------- 1 file changed, 36 insertions(+), 28 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/StringArrayUtils.java b/src/main/java/com/zipcodewilmington/StringArrayUtils.java index 9eb6d4d..b1e1c22 100644 --- a/src/main/java/com/zipcodewilmington/StringArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/StringArrayUtils.java @@ -92,8 +92,6 @@ public static boolean isPalindromic(String[] array) { return true; -// String[] arrBackwards = StringArrayUtils.reverse(array); // only pass 2/3 test -// return (Arrays.equals(array, arrBackwards)); } /** @@ -102,6 +100,17 @@ public static boolean isPalindromic(String[] array) { */ // TODO public static boolean isPangramic(String[] array) { + String[] abc = "abcdefghijklmnopqrstuvwxyz ,".split(""); + String arrString = Arrays.toString(array).toLowerCase(); + + for (String letra : abc){ + if (!arrString.contains(letra)) + return false; + } + return true; + + } + // ArrayList StringOfArrays = new ArrayList(Arrays.asList(array)); // String newString = StringOfArrays.toString().toLowerCase(); // String abc = "abcdefghigklmnopqrstuvwxyz"; @@ -113,18 +122,6 @@ public static boolean isPangramic(String[] array) { // } // return true; - boolean siOno = true; - String[] abc = "abcdefghijklmnopqrstuvwxyz ,".split(""); - String arrString = Arrays.toString(array).toLowerCase(); - - for (String element : abc){ - if (!arrString.contains(element)) - siOno = false; - } - return siOno; - - } - /** @@ -137,7 +134,7 @@ public static int getNumberOfOccurrences(String[] array, String value) { int count = 0; for (int i = 0; i < array.length; i++) { - if (value.equals(array[i])) { + if (array[i] == value) { count++; } //return 0; @@ -153,22 +150,33 @@ public static int getNumberOfOccurrences(String[] array, String value) { * @return array with identical contents excluding values of `value` */ // TODO public static String[] removeValue(String[] array, String valueToRemove) { -// -// List newList = new ArrayList(Arrays.asList(array)); -// newList.remove(valueToRemove); -// array = newList.toArray((new String[0])); -// return array; - List listArr = new ArrayList(Arrays.asList(array)); - listArr.remove(valueToRemove); - - String[] newArray = new String[listArr.size()]; //passing content to array - newArray = listArr.toArray(newArray); + String[] newArray = new String[array.length - 1]; + int count = 0; + for (int i = 0; i < array.length; i++) { + if (!array[i].equals(valueToRemove)) { + newArray[count] = array[i]; + count++; + } + } return newArray; - } + +//-----------------------THIS ALSO WORKS BUT ITS WITH LIST------------------------------------------ + +// List listArr = new ArrayList(Arrays.asList(array)); +// listArr.remove(valueToRemove); +// +// String[] newArray = new String[listArr.size()]; //passing content to array +// newArray = listArr.toArray(newArray); +// +// return newArray; + + + + /** * @param array array of chars * @return array of Strings with consecutive duplicates removes @@ -206,7 +214,7 @@ public static String[] packConsecutiveDuplicates(String[] array) { newList.add(array[i]); } - // return newList.toArray(new String[0]); + } return newList.toArray(new String[0]); @@ -214,7 +222,7 @@ public static String[] packConsecutiveDuplicates(String[] array) { } - +// return newList.toArray(new String[0]); From f8a7c2a622b077661022a46914df644241f6a5fb Mon Sep 17 00:00:00 2001 From: Laura Bedolla Date: Mon, 13 Sep 2021 17:45:24 -0400 Subject: [PATCH 5/8] deleted stuff --- .../java/com/zipcodewilmington/StringArrayUtils.java | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/StringArrayUtils.java b/src/main/java/com/zipcodewilmington/StringArrayUtils.java index b1e1c22..17816ce 100644 --- a/src/main/java/com/zipcodewilmington/StringArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/StringArrayUtils.java @@ -111,17 +111,6 @@ public static boolean isPangramic(String[] array) { } -// ArrayList StringOfArrays = new ArrayList(Arrays.asList(array)); -// String newString = StringOfArrays.toString().toLowerCase(); -// String abc = "abcdefghigklmnopqrstuvwxyz"; -// for (int i = 0; i < abc.length(); i++) { -// -// if (newString.indexOf(abc.charAt(i)) == -1) { -// return false; -// } -// } -// return true; - /** From a32129257e7851cd06347d8ceab3653a4319fd30 Mon Sep 17 00:00:00 2001 From: Laura Bedolla Date: Mon, 13 Sep 2021 18:33:46 -0400 Subject: [PATCH 6/8] stuff2 --- src/main/java/com/zipcodewilmington/StringArrayUtils.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/zipcodewilmington/StringArrayUtils.java b/src/main/java/com/zipcodewilmington/StringArrayUtils.java index 17816ce..ba7cda0 100644 --- a/src/main/java/com/zipcodewilmington/StringArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/StringArrayUtils.java @@ -211,7 +211,7 @@ public static String[] packConsecutiveDuplicates(String[] array) { } -// return newList.toArray(new String[0]); + From 9e7cc82c928d1d2e31fc8962eff1f1c957c442e6 Mon Sep 17 00:00:00 2001 From: laura Date: Mon, 13 Sep 2021 18:41:20 -0400 Subject: [PATCH 7/8] new key --- src/main/java/com/zipcodewilmington/StringArrayUtils.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/src/main/java/com/zipcodewilmington/StringArrayUtils.java b/src/main/java/com/zipcodewilmington/StringArrayUtils.java index b1e1c22..905cab2 100644 --- a/src/main/java/com/zipcodewilmington/StringArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/StringArrayUtils.java @@ -164,7 +164,7 @@ public static String[] removeValue(String[] array, String valueToRemove) { } -//-----------------------THIS ALSO WORKS BUT ITS WITH LIST------------------------------------------ +//----------------------------THIS ALSO WORKS BUT ITS WITH LIST------------------------------------------ // List listArr = new ArrayList(Arrays.asList(array)); // listArr.remove(valueToRemove); @@ -227,5 +227,3 @@ public static String[] packConsecutiveDuplicates(String[] array) { - - From 9b973fe2cbf1d3600e499fcfba6a17d6a14a82e4 Mon Sep 17 00:00:00 2001 From: laura Date: Mon, 13 Sep 2021 18:42:57 -0400 Subject: [PATCH 8/8] new one --- src/main/java/com/zipcodewilmington/StringArrayUtils.java | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/java/com/zipcodewilmington/StringArrayUtils.java b/src/main/java/com/zipcodewilmington/StringArrayUtils.java index 4e512ed..1a04dbc 100644 --- a/src/main/java/com/zipcodewilmington/StringArrayUtils.java +++ b/src/main/java/com/zipcodewilmington/StringArrayUtils.java @@ -211,6 +211,7 @@ public static String[] packConsecutiveDuplicates(String[] array) { } +//