Explorar el Código

Danny Do edit one

Sean Mis hace 6 años
padre
commit
ecc5bc15b9

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

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

+ 0
- 7
.idea/kotlinc.xml Ver fichero

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 fichero

7
       </list>
7
       </list>
8
     </option>
8
     </option>
9
   </component>
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
   <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
10
   <component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
27
     <output url="file://$PROJECT_DIR$/classes" />
11
     <output url="file://$PROJECT_DIR$/classes" />
28
   </component>
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
 </project>
13
 </project>

+ 28
- 26
src/main/java/com/zipcodewilmington/danny_do_better_exercises/MathUtilities.java Ver fichero

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

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

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

+ 24
- 10
src/main/java/com/zipcodewilmington/danny_do_better_exercises/StringUtilities.java Ver fichero

8
      * @return `Hello World` as a string
8
      * @return `Hello World` as a string
9
      */
9
      */
10
     public static String getHelloWorld() {
10
     public static String getHelloWorld() {
11
-        return null;
11
+        String greeting = "Hello World";
12
+        return greeting;
12
     }
13
     }
13
 
14
 
14
     /**
15
     /**
17
      * @return the concatenation of two strings, `firstSegment`, and `secondSegment`
18
      * @return the concatenation of two strings, `firstSegment`, and `secondSegment`
18
      */
19
      */
19
     public static String concatenation(String firstSegment, String secondSegment){
20
     public static String concatenation(String firstSegment, String secondSegment){
20
-        return null;
21
+        return firstSegment+secondSegment;
21
     }
22
     }
22
 
23
 
23
     /**
24
     /**
26
      * @return the concatenation of an integer, `firstSegment`, and a String, `secondSegment`
27
      * @return the concatenation of an integer, `firstSegment`, and a String, `secondSegment`
27
      */
28
      */
28
     public static String concatenation(int firstSegment, String secondSegment){
29
     public static String concatenation(int firstSegment, String secondSegment){
29
-        return null;
30
+        return firstSegment+secondSegment;
30
     }
31
     }
31
 
32
 
32
     /**
33
     /**
34
      * @return the first 3 characters of `input`
35
      * @return the first 3 characters of `input`
35
      */
36
      */
36
     public static String getPrefix(String input){
37
     public static String getPrefix(String input){
37
-        return null;
38
+        return input.substring(0, 3);
38
     }
39
     }
39
 
40
 
40
     /**
41
     /**
42
      * @return the last 3 characters of `input`
43
      * @return the last 3 characters of `input`
43
      */
44
      */
44
     public static String getSuffix(String input){
45
     public static String getSuffix(String input){
45
-        return null;
46
+        return input.substring(input.length()-3, input.length());
46
     }
47
     }
47
 
48
 
48
     /**
49
     /**
51
      * @return the equivalence of two strings, `inputValue` and `comparableValue`
52
      * @return the equivalence of two strings, `inputValue` and `comparableValue`
52
      */
53
      */
53
     public static Boolean compareTwoStrings(String inputValue, String comparableValue){
54
     public static Boolean compareTwoStrings(String inputValue, String comparableValue){
54
-        return null;
55
+        return inputValue.equals(comparableValue);
55
     }
56
     }
56
 
57
 
57
     /**
58
     /**
59
      * @return the middle character of `inputValue`
60
      * @return the middle character of `inputValue`
60
      */
61
      */
61
     public static Character getMiddleCharacter(String inputValue){
62
     public static Character getMiddleCharacter(String inputValue){
62
-        return null;
63
+        double mid = inputValue.length()/2;
64
+        int i = (int) mid;
65
+        if (inputValue.length()%2 != 0) {
66
+            return inputValue.charAt(i);
67
+        } else {
68
+            return inputValue.charAt(i-1);
69
+        }
63
     }
70
     }
64
 
71
 
65
     /**
72
     /**
67
      * @return the first sequence of characters
74
      * @return the first sequence of characters
68
      */
75
      */
69
     public static String getFirstWord(String spaceDelimitedString){
76
     public static String getFirstWord(String spaceDelimitedString){
70
-        return null;
77
+        String [] firstArray = spaceDelimitedString.split(" ", 0);
78
+
79
+        return firstArray[0];
71
     }
80
     }
72
 
81
 
73
     /**
82
     /**
75
      * @return the second word of a string delimited by spaces.
84
      * @return the second word of a string delimited by spaces.
76
      */
85
      */
77
     public static String getSecondWord(String spaceDelimitedString){
86
     public static String getSecondWord(String spaceDelimitedString){
78
-        return null;
87
+        String [] secondArray = spaceDelimitedString.split(" ", 0);
88
+
89
+        return secondArray[1];
79
     }
90
     }
80
 
91
 
81
     /**
92
     /**
83
      * @return an identical string with characters in reverse order.
94
      * @return an identical string with characters in reverse order.
84
      */
95
      */
85
     public static String reverseTheTwo(String stringToReverse){
96
     public static String reverseTheTwo(String stringToReverse){
86
-        return null;
97
+        StringBuilder sb = new StringBuilder(stringToReverse);
98
+        sb.reverse();
99
+        return sb.toString();
100
+
87
     }
101
     }
88
 }
102
 }

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

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

+ 2
- 2
src/test/java/com/zipcodewilmington/danny_do_better_exercises/TestMathUtilities.java Ver fichero

36
         // : Given
36
         // : Given
37
         short baseValue = 16384;
37
         short baseValue = 16384;
38
         short addedValue = 7;
38
         short addedValue = 7;
39
-        short expected = 32767;
39
+        short expected = 16391;
40
         // : When
40
         // : When
41
         short actual = primativeTypes.add(baseValue, addedValue);
41
         short actual = primativeTypes.add(baseValue, addedValue);
42
         // : Then
42
         // : Then
296
         // : Given
296
         // : Given
297
         byte multiplicand = 16;
297
         byte multiplicand = 16;
298
         byte multiplier = 14;
298
         byte multiplier = 14;
299
-        byte expectedByte = 64;
299
+        byte expectedByte = -32;
300
         // : When
300
         // : When
301
         byte actualByte = primativeTypes.multiply(multiplicand, multiplier);
301
         byte actualByte = primativeTypes.multiply(multiplicand, multiplier);
302
         // : Then
302
         // : Then

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

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

+ 2
- 2
src/test/java/com/zipcodewilmington/danny_do_better_exercises/TestStringUtilities.java Ver fichero

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

BIN
target/classes/com/zipcodewilmington/danny_do_better_exercises/MathUtilities.class Ver fichero


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


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


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


BIN
target/test-classes/com/zipcodewilmington/danny_do_better_exercises/TestMathUtilities.class Ver fichero


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


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