Ver código fonte

everything but bytes

Patrick Glavin 6 anos atrás
pai
commit
8f18864281

+ 1
- 1
.idea/compiler.xml Ver arquivo

@@ -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 Ver arquivo

@@ -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 Ver arquivo

@@ -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>

+ 42
- 26
src/main/java/com/zipcodewilmington/danny_do_better_exercises/MathUtilities.java Ver arquivo

@@ -11,7 +11,7 @@ public class MathUtilities {
11 11
      * @return sum of `baseValue` and `difference`
12 12
      */
13 13
     public Integer add(int baseValue, int difference) {
14
-        return null;
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,8 @@ 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
+        int answer = (baseValue + difference);
33
+        return (short)answer;
33 34
     }
34 35
 
35 36
     /**
@@ -38,7 +39,8 @@ public class MathUtilities {
38 39
      * @return sum of `baseValue` and `difference`
39 40
      */
40 41
     public Byte add(byte baseValue, byte difference) {
41
-        return null;
42
+        int temp = (baseValue+difference);
43
+        return (byte)(temp);
42 44
     }
43 45
 
44 46
     /**
@@ -47,7 +49,7 @@ public class MathUtilities {
47 49
      * @return sum of `baseValue` and `difference`
48 50
      */
49 51
     public Float add(float baseValue, float difference) {
50
-        return null;
52
+        return baseValue + difference;
51 53
     }
52 54
 
53 55
     /**
@@ -56,7 +58,7 @@ public class MathUtilities {
56 58
      * @return sum of `baseValue` and `difference`
57 59
      */
58 60
     public Double add(double baseValue, double difference) {
59
-        return null;
61
+        return baseValue + difference;
60 62
     }
61 63
 
62 64
     /**
@@ -65,7 +67,7 @@ public class MathUtilities {
65 67
      * @return difference between `baseValue` and `difference`
66 68
      */
67 69
     public Integer subtract(int baseValue, int difference) {
68
-        return null;
70
+        return baseValue - difference;
69 71
     }
70 72
 
71 73
     /**
@@ -74,7 +76,7 @@ public class MathUtilities {
74 76
      * @return difference between `baseValue` and `difference`
75 77
      */
76 78
     public Long subtract(long baseValue, long difference) {
77
-        return null;
79
+        return baseValue - difference;
78 80
     }
79 81
 
80 82
     /**
@@ -83,7 +85,9 @@ public class MathUtilities {
83 85
      * @return difference between `baseValue` and `difference`
84 86
      */
85 87
     public Short subtract(short baseValue, short difference) {
86
-        return null;
88
+        int first = baseValue;
89
+        int second = difference;
90
+        return (short)(first-second);
87 91
     }
88 92
 
89 93
     /**
@@ -92,7 +96,9 @@ public class MathUtilities {
92 96
      * @return difference between `baseValue` and `difference`
93 97
      */
94 98
     public Byte subtract(byte baseValue, byte difference) {
95
-        return null;
99
+        int first = baseValue;
100
+        int second = difference;
101
+        return (byte)(first-second);
96 102
     }
97 103
 
98 104
     /**
@@ -101,7 +107,9 @@ public class MathUtilities {
101 107
      * @return difference between `baseValue` and `difference`
102 108
      */
103 109
     public Float subtract(float baseValue, float difference) {
104
-        return null;
110
+        Float first = baseValue * 100;
111
+        Float second = difference * 100;
112
+        return ((first - second)/100);
105 113
     }
106 114
 
107 115
     /**
@@ -110,7 +118,7 @@ public class MathUtilities {
110 118
      * @return difference between `baseValue` and `difference`
111 119
      */
112 120
     public Double subtract(double baseValue, double difference) {
113
-        return null;
121
+        return baseValue - difference;
114 122
     }
115 123
 
116 124
 
@@ -120,7 +128,7 @@ public class MathUtilities {
120 128
      * @return division of `dividend` by `divisor
121 129
      */
122 130
     public Integer divide(int dividend, int divisor) {
123
-        return null;
131
+        return dividend/divisor;
124 132
     }
125 133
 
126 134
     /**
@@ -129,7 +137,7 @@ public class MathUtilities {
129 137
      * @return division of `dividend` by `divisor
130 138
      */
131 139
     public Long divide(long dividend, long divisor) {
132
-        return null;
140
+        return dividend/divisor;
133 141
     }
134 142
 
135 143
     /**
@@ -138,7 +146,9 @@ public class MathUtilities {
138 146
      * @return division of `dividend` by `divisor
139 147
      */
140 148
     public Short divide(short dividend, short divisor) {
141
-        return null;
149
+        int first = dividend;
150
+        int second = divisor;
151
+        return (short)(first/second);
142 152
     }
143 153
 
144 154
     /**
@@ -147,7 +157,9 @@ public class MathUtilities {
147 157
      * @return division of `dividend` by `divisor
148 158
      */
149 159
     public Byte divide(byte dividend, byte divisor) {
150
-        return null;
160
+        int first = dividend;
161
+        int second = divisor;
162
+        return (byte)(first/second);
151 163
     }
152 164
 
153 165
     /**
@@ -156,7 +168,7 @@ public class MathUtilities {
156 168
      * @return division of `dividend` by `divisor
157 169
      */
158 170
     public Float divide(float dividend, float divisor) {
159
-        return null;
171
+        return dividend/divisor;
160 172
     }
161 173
 
162 174
     /**
@@ -165,7 +177,7 @@ public class MathUtilities {
165 177
      * @return division of `dividend` by `divisor
166 178
      */
167 179
     public Double divide(double dividend, double divisor) {
168
-        return null;
180
+        return dividend/divisor;
169 181
     }
170 182
 
171 183
 
@@ -175,7 +187,7 @@ public class MathUtilities {
175 187
      * @return product of `multiplicand` by `multiplier`
176 188
      */
177 189
     public Integer multiply(int multiplicand, int multiplier) {
178
-        return null;
190
+        return multiplicand * multiplier;
179 191
     }
180 192
 
181 193
     /**
@@ -184,7 +196,7 @@ public class MathUtilities {
184 196
      * @return product of `multiplicand` by `multiplier`
185 197
      */
186 198
     public Long multiply(long multiplicand, long multiplier) {
187
-        return null;
199
+        return multiplicand * multiplier;
188 200
     }
189 201
 
190 202
     /**
@@ -193,7 +205,9 @@ public class MathUtilities {
193 205
      * @return product of `multiplicand` by `multiplier`
194 206
      */
195 207
     public Short multiply(short multiplicand, short multiplier) {
196
-        return null;
208
+        int first = multiplicand;
209
+        int second = multiplier;
210
+        return (short)(first * second);
197 211
     }
198 212
     /**
199 213
      * @param multiplicand value to be multiplied
@@ -201,7 +215,9 @@ public class MathUtilities {
201 215
      * @return product of `multiplicand` by `multiplier`
202 216
      */
203 217
     public Byte multiply(byte multiplicand, byte multiplier) {
204
-        return null;
218
+        int first = multiplicand;
219
+        int second = multiplier;
220
+        return (byte)(first * second);
205 221
     }
206 222
 
207 223
     /**
@@ -210,7 +226,7 @@ public class MathUtilities {
210 226
      * @return product of `multiplicand` by `multiplier`
211 227
      */
212 228
     public Float multiply(float multiplicand, float multiplier) {
213
-        return null;
229
+        return multiplicand * multiplier;
214 230
     }
215 231
 
216 232
     /**
@@ -219,7 +235,7 @@ public class MathUtilities {
219 235
      * @return product of `multiplicand` by `multiplier`
220 236
      */
221 237
     public Double multiply(double multiplicand, double multiplier) {
222
-        return null;
238
+        return multiplicand * multiplier;
223 239
     }
224 240
 
225 241
 
@@ -227,14 +243,14 @@ public class MathUtilities {
227 243
       * @return true
228 244
      */
229 245
     public Boolean returnTrue() {
230
-        return null;
246
+        return true;
231 247
     }
232 248
 
233 249
     /**
234 250
      * @return false
235 251
      */
236 252
     public Boolean returnFalse() {
237
-        return null;
253
+        return false;
238 254
     }
239 255
 
240 256
 }

+ 4
- 4
src/main/java/com/zipcodewilmington/danny_do_better_exercises/PredicateUtilities.java Ver arquivo

@@ -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
 }

+ 20
- 10
src/main/java/com/zipcodewilmington/danny_do_better_exercises/StringUtilities.java Ver arquivo

@@ -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);
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
+        if (inputValue.length() % 2 == 1){
63
+            int target = inputValue.length()/2;
64
+            return inputValue.charAt(target);
65
+        }
66
+        else {
67
+            int target = (inputValue.length() - 1)/2;
68
+            return inputValue.charAt(target);
69
+        }
63 70
     }
64 71
 
65 72
     /**
@@ -67,7 +74,8 @@ 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
+        int i = spaceDelimitedString.indexOf(" ");
78
+        return spaceDelimitedString.substring(0, i);
71 79
     }
72 80
 
73 81
     /**
@@ -75,7 +83,8 @@ public class StringUtilities {
75 83
      * @return the second word of a string delimited by spaces.
76 84
      */
77 85
     public static String getSecondWord(String spaceDelimitedString){
78
-        return null;
86
+        int i = spaceDelimitedString.indexOf(" ");
87
+        return spaceDelimitedString.substring(i + 1, spaceDelimitedString.length());
79 88
     }
80 89
 
81 90
     /**
@@ -83,6 +92,7 @@ public class StringUtilities {
83 92
      * @return an identical string with characters in reverse order.
84 93
      */
85 94
     public static String reverseTheTwo(String stringToReverse){
86
-        return null;
95
+        String temp = new StringBuilder(stringToReverse).reverse().toString();
96
+        return temp;
87 97
     }
88 98
 }

+ 1
- 1
src/main/java/com/zipcodewilmington/danny_do_better_exercises/ZipcodeRocks.java Ver arquivo

@@ -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
 }

+ 3
- 3
src/test/java/com/zipcodewilmington/danny_do_better_exercises/TestPredicateUtilities.java Ver arquivo

@@ -33,7 +33,7 @@ public class TestPredicateUtilities {
33 33
         boolean outcome = math.isGreaterThan(greaterValue, lesserValue);
34 34
 
35 35
         // : Then
36
-        assertTrue(outcome);
36
+        assertFalse(outcome);
37 37
     }
38 38
 
39 39
 
@@ -62,7 +62,7 @@ public class TestPredicateUtilities {
62 62
         boolean outcome = math.isLessThan(greaterValue, lesserValue);
63 63
 
64 64
         // : Then
65
-        assertTrue(outcome);
65
+        assertFalse(outcome);
66 66
     }
67 67
 
68 68
 
@@ -116,6 +116,6 @@ public class TestPredicateUtilities {
116 116
         boolean outcome = math.isGreaterThanOrEqualTo(greaterValue, lesserValue);
117 117
 
118 118
         // : Then
119
-        assertTrue(outcome);
119
+        assertFalse(outcome);
120 120
     }
121 121
 }

+ 1
- 1
src/test/java/com/zipcodewilmington/danny_do_better_exercises/TestStringUtilities.java Ver arquivo

@@ -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 Ver arquivo


BIN
target/classes/com/zipcodewilmington/danny_do_better_exercises/PredicateUtilities.class Ver arquivo


BIN
target/classes/com/zipcodewilmington/danny_do_better_exercises/StringUtilities.class Ver arquivo


BIN
target/classes/com/zipcodewilmington/danny_do_better_exercises/ZipcodeRocks.class Ver arquivo


BIN
target/test-classes/com/zipcodewilmington/danny_do_better_exercises/TestPredicateUtilities.class Ver arquivo


BIN
target/test-classes/com/zipcodewilmington/danny_do_better_exercises/TestStringUtilities.class Ver arquivo