Преглед изворни кода

finished project. Some tests are not coming out correctly but I am like 90% sure those are the tests being broken

Anthony Jordan пре 6 година
родитељ
комит
7a1b2906e6

+ 1
- 1
.idea/compiler.xml Прегледај датотеку

@@ -9,7 +9,7 @@
9 9
         <module name="ChapterOneMicro" />
10 10
       </profile>
11 11
     </annotationProcessing>
12
-    <bytecodeTargetLevel target="1.8">
12
+    <bytecodeTargetLevel>
13 13
       <module name="ChapterOneMicro" target="1.8" />
14 14
     </bytecodeTargetLevel>
15 15
   </component>

+ 0
- 7
.idea/kotlinc.xml Прегледај датотеку

@@ -1,7 +0,0 @@
1
-<?xml version="1.0" encoding="UTF-8"?>
2
-<project version="4">
3
-  <component name="KotlinCommonCompilerArguments">
4
-    <option name="languageVersion" value="1.1" />
5
-    <option name="apiVersion" value="1.1" />
6
-  </component>
7
-</project>

+ 0
- 77
.idea/misc.xml Прегледај датотеку

@@ -7,84 +7,7 @@
7 7
       </list>
8 8
     </option>
9 9
   </component>
10
-  <component name="ProjectInspectionProfilesVisibleTreeState">
11
-    <entry key="Project Default">
12
-      <profile-state>
13
-        <expanded-state>
14
-          <State>
15
-            <id />
16
-          </State>
17
-        </expanded-state>
18
-        <selected-state>
19
-          <State>
20
-            <id>Android</id>
21
-          </State>
22
-        </selected-state>
23
-      </profile-state>
24
-    </entry>
25
-  </component>
26 10
   <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
27 11
     <output url="file://$PROJECT_DIR$/classes" />
28 12
   </component>
29
-  <component name="masterDetails">
30
-    <states>
31
-      <state key="GlobalLibrariesConfigurable.UI">
32
-        <settings>
33
-          <splitter-proportions>
34
-            <option name="proportions">
35
-              <list>
36
-                <option value="0.2" />
37
-              </list>
38
-            </option>
39
-          </splitter-proportions>
40
-        </settings>
41
-      </state>
42
-      <state key="JdkListConfigurable.UI">
43
-        <settings>
44
-          <last-edited>1.8</last-edited>
45
-          <splitter-proportions>
46
-            <option name="proportions">
47
-              <list>
48
-                <option value="0.2" />
49
-              </list>
50
-            </option>
51
-          </splitter-proportions>
52
-        </settings>
53
-      </state>
54
-      <state key="ProjectJDKs.UI">
55
-        <settings>
56
-          <last-edited>1.8</last-edited>
57
-          <splitter-proportions>
58
-            <option name="proportions">
59
-              <list>
60
-                <option value="0.2" />
61
-              </list>
62
-            </option>
63
-          </splitter-proportions>
64
-        </settings>
65
-      </state>
66
-      <state key="ProjectLibrariesConfigurable.UI">
67
-        <settings>
68
-          <splitter-proportions>
69
-            <option name="proportions">
70
-              <list>
71
-                <option value="0.2" />
72
-              </list>
73
-            </option>
74
-          </splitter-proportions>
75
-        </settings>
76
-      </state>
77
-      <state key="ScopeChooserConfigurable.UI">
78
-        <settings>
79
-          <splitter-proportions>
80
-            <option name="proportions">
81
-              <list>
82
-                <option value="0.2" />
83
-              </list>
84
-            </option>
85
-          </splitter-proportions>
86
-        </settings>
87
-      </state>
88
-    </states>
89
-  </component>
90 13
 </project>

+ 27
- 27
src/main/java/com/zipcodewilmington/danny_do_better_exercises/MathUtilities.java Прегледај датотеку

@@ -10,8 +10,8 @@ public class MathUtilities {
10 10
      * @param difference value to add to starting value
11 11
      * @return sum of `baseValue` and `difference`
12 12
      */
13
-    public Integer add(int baseValue, int difference) {
14
-        return null;
13
+    public Integer add(int baseValue , int difference) {
14
+        return baseValue + difference;
15 15
     }
16 16
 
17 17
     /**
@@ -20,7 +20,7 @@ public class MathUtilities {
20 20
      * @return sum of `baseValue` and `difference`
21 21
      */
22 22
     public Long add(long baseValue, long difference) {
23
-        return null;
23
+        return baseValue + difference;
24 24
     }
25 25
 
26 26
     /**
@@ -29,7 +29,7 @@ public class MathUtilities {
29 29
      * @return sum of `baseValue` and `difference`
30 30
      */
31 31
     public Short add(short baseValue, short difference) {
32
-        return null;
32
+        return (short)(baseValue + difference);
33 33
     }
34 34
 
35 35
     /**
@@ -38,7 +38,7 @@ public class MathUtilities {
38 38
      * @return sum of `baseValue` and `difference`
39 39
      */
40 40
     public Byte add(byte baseValue, byte difference) {
41
-        return null;
41
+        return  (byte)(baseValue + difference);
42 42
     }
43 43
 
44 44
     /**
@@ -47,7 +47,7 @@ public class MathUtilities {
47 47
      * @return sum of `baseValue` and `difference`
48 48
      */
49 49
     public Float add(float baseValue, float difference) {
50
-        return null;
50
+        return baseValue + difference;
51 51
     }
52 52
 
53 53
     /**
@@ -56,7 +56,7 @@ public class MathUtilities {
56 56
      * @return sum of `baseValue` and `difference`
57 57
      */
58 58
     public Double add(double baseValue, double difference) {
59
-        return null;
59
+        return baseValue + difference;
60 60
     }
61 61
 
62 62
     /**
@@ -65,7 +65,7 @@ public class MathUtilities {
65 65
      * @return difference between `baseValue` and `difference`
66 66
      */
67 67
     public Integer subtract(int baseValue, int difference) {
68
-        return null;
68
+        return baseValue - difference;
69 69
     }
70 70
 
71 71
     /**
@@ -74,7 +74,7 @@ public class MathUtilities {
74 74
      * @return difference between `baseValue` and `difference`
75 75
      */
76 76
     public Long subtract(long baseValue, long difference) {
77
-        return null;
77
+        return baseValue - difference;
78 78
     }
79 79
 
80 80
     /**
@@ -83,7 +83,7 @@ public class MathUtilities {
83 83
      * @return difference between `baseValue` and `difference`
84 84
      */
85 85
     public Short subtract(short baseValue, short difference) {
86
-        return null;
86
+        return (short)(baseValue - difference);
87 87
     }
88 88
 
89 89
     /**
@@ -92,7 +92,7 @@ public class MathUtilities {
92 92
      * @return difference between `baseValue` and `difference`
93 93
      */
94 94
     public Byte subtract(byte baseValue, byte difference) {
95
-        return null;
95
+        return (byte)(baseValue - difference);
96 96
     }
97 97
 
98 98
     /**
@@ -101,7 +101,7 @@ public class MathUtilities {
101 101
      * @return difference between `baseValue` and `difference`
102 102
      */
103 103
     public Float subtract(float baseValue, float difference) {
104
-        return null;
104
+        return baseValue - difference;
105 105
     }
106 106
 
107 107
     /**
@@ -110,7 +110,7 @@ public class MathUtilities {
110 110
      * @return difference between `baseValue` and `difference`
111 111
      */
112 112
     public Double subtract(double baseValue, double difference) {
113
-        return null;
113
+        return baseValue - difference;
114 114
     }
115 115
 
116 116
 
@@ -120,7 +120,7 @@ public class MathUtilities {
120 120
      * @return division of `dividend` by `divisor
121 121
      */
122 122
     public Integer divide(int dividend, int divisor) {
123
-        return null;
123
+        return dividend / divisor;
124 124
     }
125 125
 
126 126
     /**
@@ -129,7 +129,7 @@ public class MathUtilities {
129 129
      * @return division of `dividend` by `divisor
130 130
      */
131 131
     public Long divide(long dividend, long divisor) {
132
-        return null;
132
+        return dividend / divisor;
133 133
     }
134 134
 
135 135
     /**
@@ -138,7 +138,7 @@ public class MathUtilities {
138 138
      * @return division of `dividend` by `divisor
139 139
      */
140 140
     public Short divide(short dividend, short divisor) {
141
-        return null;
141
+        return (short)(dividend / divisor);
142 142
     }
143 143
 
144 144
     /**
@@ -147,7 +147,7 @@ public class MathUtilities {
147 147
      * @return division of `dividend` by `divisor
148 148
      */
149 149
     public Byte divide(byte dividend, byte divisor) {
150
-        return null;
150
+        return (byte)(dividend / divisor);
151 151
     }
152 152
 
153 153
     /**
@@ -156,7 +156,7 @@ public class MathUtilities {
156 156
      * @return division of `dividend` by `divisor
157 157
      */
158 158
     public Float divide(float dividend, float divisor) {
159
-        return null;
159
+        return dividend / divisor;
160 160
     }
161 161
 
162 162
     /**
@@ -165,7 +165,7 @@ public class MathUtilities {
165 165
      * @return division of `dividend` by `divisor
166 166
      */
167 167
     public Double divide(double dividend, double divisor) {
168
-        return null;
168
+        return dividend / divisor;
169 169
     }
170 170
 
171 171
 
@@ -175,7 +175,7 @@ public class MathUtilities {
175 175
      * @return product of `multiplicand` by `multiplier`
176 176
      */
177 177
     public Integer multiply(int multiplicand, int multiplier) {
178
-        return null;
178
+        return multiplicand * multiplier;
179 179
     }
180 180
 
181 181
     /**
@@ -184,7 +184,7 @@ public class MathUtilities {
184 184
      * @return product of `multiplicand` by `multiplier`
185 185
      */
186 186
     public Long multiply(long multiplicand, long multiplier) {
187
-        return null;
187
+        return multiplicand * multiplier;
188 188
     }
189 189
 
190 190
     /**
@@ -193,7 +193,7 @@ public class MathUtilities {
193 193
      * @return product of `multiplicand` by `multiplier`
194 194
      */
195 195
     public Short multiply(short multiplicand, short multiplier) {
196
-        return null;
196
+        return (short)(multiplicand * multiplier);
197 197
     }
198 198
     /**
199 199
      * @param multiplicand value to be multiplied
@@ -201,7 +201,7 @@ public class MathUtilities {
201 201
      * @return product of `multiplicand` by `multiplier`
202 202
      */
203 203
     public Byte multiply(byte multiplicand, byte multiplier) {
204
-        return null;
204
+        return (byte)(multiplicand * multiplier);
205 205
     }
206 206
 
207 207
     /**
@@ -210,7 +210,7 @@ public class MathUtilities {
210 210
      * @return product of `multiplicand` by `multiplier`
211 211
      */
212 212
     public Float multiply(float multiplicand, float multiplier) {
213
-        return null;
213
+        return multiplicand * multiplier;
214 214
     }
215 215
 
216 216
     /**
@@ -219,7 +219,7 @@ public class MathUtilities {
219 219
      * @return product of `multiplicand` by `multiplier`
220 220
      */
221 221
     public Double multiply(double multiplicand, double multiplier) {
222
-        return null;
222
+        return multiplicand * multiplier;
223 223
     }
224 224
 
225 225
 
@@ -227,14 +227,14 @@ public class MathUtilities {
227 227
       * @return true
228 228
      */
229 229
     public Boolean returnTrue() {
230
-        return null;
230
+        return true;
231 231
     }
232 232
 
233 233
     /**
234 234
      * @return false
235 235
      */
236 236
     public Boolean returnFalse() {
237
-        return null;
237
+        return false;
238 238
     }
239 239
 
240 240
 }

+ 4
- 4
src/main/java/com/zipcodewilmington/danny_do_better_exercises/PredicateUtilities.java Прегледај датотеку

@@ -10,7 +10,7 @@ public class PredicateUtilities {
10 10
      * @return true if `x` is greater than `y`
11 11
      */
12 12
     public Boolean isGreaterThan(int x, int y) {
13
-        return null;
13
+        return x > y;
14 14
     }
15 15
 
16 16
     /**
@@ -19,7 +19,7 @@ public class PredicateUtilities {
19 19
      * @return true if `x` is less than `y`
20 20
      */
21 21
     public Boolean isLessThan(int x, int y) {
22
-        return null;
22
+        return x < y;
23 23
     }
24 24
 
25 25
     /**
@@ -28,7 +28,7 @@ public class PredicateUtilities {
28 28
      * @return true if `x` is greater than or equal to `y`
29 29
      */
30 30
     public Boolean isGreaterThanOrEqualTo(int x, int y) {
31
-        return null;
31
+        return x >= y;
32 32
     }
33 33
 
34 34
     /**
@@ -37,6 +37,6 @@ public class PredicateUtilities {
37 37
      * @return true if `x` is less than or equal to `y`
38 38
      */
39 39
     public Boolean isLessThanOrEqualTo(int x, int y) {
40
-        return null;
40
+        return x <= y;
41 41
     }
42 42
 }

+ 47
- 10
src/main/java/com/zipcodewilmington/danny_do_better_exercises/StringUtilities.java Прегледај датотеку

@@ -8,7 +8,7 @@ public class StringUtilities {
8 8
      * @return `Hello World` as a string
9 9
      */
10 10
     public static String getHelloWorld() {
11
-        return null;
11
+        return "Hello World";
12 12
     }
13 13
 
14 14
     /**
@@ -17,7 +17,7 @@ public class StringUtilities {
17 17
      * @return the concatenation of two strings, `firstSegment`, and `secondSegment`
18 18
      */
19 19
     public static String concatenation(String firstSegment, String secondSegment){
20
-        return null;
20
+        return firstSegment + secondSegment;
21 21
     }
22 22
 
23 23
     /**
@@ -26,7 +26,7 @@ public class StringUtilities {
26 26
      * @return the concatenation of an integer, `firstSegment`, and a String, `secondSegment`
27 27
      */
28 28
     public static String concatenation(int firstSegment, String secondSegment){
29
-        return null;
29
+        return firstSegment + secondSegment;
30 30
     }
31 31
 
32 32
     /**
@@ -34,7 +34,7 @@ public class StringUtilities {
34 34
      * @return the first 3 characters of `input`
35 35
      */
36 36
     public static String getPrefix(String input){
37
-        return null;
37
+        return input.substring(0, 3);
38 38
     }
39 39
 
40 40
     /**
@@ -42,7 +42,7 @@ public class StringUtilities {
42 42
      * @return the last 3 characters of `input`
43 43
      */
44 44
     public static String getSuffix(String input){
45
-        return null;
45
+        return input.substring(input.length() - 3, input.length());
46 46
     }
47 47
 
48 48
     /**
@@ -51,7 +51,7 @@ public class StringUtilities {
51 51
      * @return the equivalence of two strings, `inputValue` and `comparableValue`
52 52
      */
53 53
     public static Boolean compareTwoStrings(String inputValue, String comparableValue){
54
-        return null;
54
+        return inputValue.equals(comparableValue);
55 55
     }
56 56
 
57 57
     /**
@@ -59,7 +59,14 @@ public class StringUtilities {
59 59
      * @return the middle character of `inputValue`
60 60
      */
61 61
     public static Character getMiddleCharacter(String inputValue){
62
-        return null;
62
+        int length = inputValue.length() / 2;
63
+        if (length % 2 == 0){
64
+            length = length - 1;
65
+        }
66
+
67
+
68
+        return inputValue.charAt(length) ;
69
+
63 70
     }
64 71
 
65 72
     /**
@@ -67,7 +74,15 @@ public class StringUtilities {
67 74
      * @return the first sequence of characters
68 75
      */
69 76
     public static String getFirstWord(String spaceDelimitedString){
70
-        return null;
77
+        Integer firstSpace = null;
78
+        for (int count = 0; count < spaceDelimitedString.length(); count++ ) {
79
+            if (spaceDelimitedString.charAt(count) == ' ') {
80
+                firstSpace = count;
81
+                break;
82
+            }
83
+        }
84
+
85
+        return spaceDelimitedString.substring(0, firstSpace);
71 86
     }
72 87
 
73 88
     /**
@@ -75,7 +90,26 @@ public class StringUtilities {
75 90
      * @return the second word of a string delimited by spaces.
76 91
      */
77 92
     public static String getSecondWord(String spaceDelimitedString){
78
-        return null;
93
+        Integer firstSpace = null;
94
+        Integer secondSpace = null;
95
+        for (int count = 0; count < spaceDelimitedString.length(); count++ ) {
96
+            if (spaceDelimitedString.charAt(count) == ' ') {
97
+                firstSpace = count;
98
+                break;
99
+            }
100
+        }
101
+        for (Integer count = firstSpace; count < spaceDelimitedString.length(); count++ ) {
102
+            if (spaceDelimitedString.charAt(count) == ' ') {
103
+                secondSpace = count;
104
+                break;
105
+            }
106
+        }
107
+        if (firstSpace == secondSpace) {
108
+            secondSpace = spaceDelimitedString.length();
109
+        }
110
+        firstSpace++;
111
+        return spaceDelimitedString.substring(firstSpace, secondSpace);
112
+
79 113
     }
80 114
 
81 115
     /**
@@ -83,6 +117,9 @@ public class StringUtilities {
83 117
      * @return an identical string with characters in reverse order.
84 118
      */
85 119
     public static String reverseTheTwo(String stringToReverse){
86
-        return null;
120
+        StringBuilder string = new StringBuilder();
121
+        string.append(stringToReverse);
122
+        string = string.reverse();
123
+        return string.toString();
87 124
     }
88 125
 }

+ 1
- 1
src/main/java/com/zipcodewilmington/danny_do_better_exercises/ZipcodeRocks.java Прегледај датотеку

@@ -5,6 +5,6 @@ package com.zipcodewilmington.danny_do_better_exercises;
5 5
  */
6 6
 public class ZipcodeRocks {
7 7
     public static void main(String[] args) {
8
-//         System.out.println("Zipcode Rocks!");
8
+         System.out.println("Zipcode Rocks!");
9 9
     }
10 10
 }

+ 1
- 1
src/test/java/com/zipcodewilmington/danny_do_better_exercises/TestMathUtilities.java Прегледај датотеку

@@ -296,7 +296,7 @@ public class TestMathUtilities {
296 296
         // : Given
297 297
         byte multiplicand = 16;
298 298
         byte multiplier = 14;
299
-        byte expectedByte = 64;
299
+        byte expectedByte = -32;
300 300
         // : When
301 301
         byte actualByte = primativeTypes.multiply(multiplicand, multiplier);
302 302
         // : Then

+ 2
- 2
src/test/java/com/zipcodewilmington/danny_do_better_exercises/TestStringUtilities.java Прегледај датотеку

@@ -56,7 +56,7 @@ public class TestStringUtilities {
56 56
     public void substringBeginTest(){
57 57
         // : Given
58 58
         String input = "Hello";
59
-        String expected = "olleH";
59
+        String expected = "Hel";
60 60
 
61 61
         // : When
62 62
         String actual = StringUtilities.getPrefix(input);
@@ -154,7 +154,7 @@ public class TestStringUtilities {
154 154
         String expected = "Wilmington";
155 155
 
156 156
         // : When
157
-        String actual = StringUtilities.getFirstWord(input);
157
+        String actual = StringUtilities.getSecondWord(input);
158 158
 
159 159
         // : Then
160 160
         assertEquals(expected, actual);

BIN
target/classes/com/zipcodewilmington/danny_do_better_exercises/MathUtilities.class Прегледај датотеку


BIN
target/classes/com/zipcodewilmington/danny_do_better_exercises/PredicateUtilities.class Прегледај датотеку


BIN
target/classes/com/zipcodewilmington/danny_do_better_exercises/StringUtilities.class Прегледај датотеку


BIN
target/classes/com/zipcodewilmington/danny_do_better_exercises/ZipcodeRocks.class Прегледај датотеку


BIN
target/test-classes/com/zipcodewilmington/danny_do_better_exercises/TestMathUtilities.class Прегледај датотеку


BIN
target/test-classes/com/zipcodewilmington/danny_do_better_exercises/TestStringUtilities.class Прегледај датотеку