瀏覽代碼

first commit

Luis Romero 6 年之前
父節點
當前提交
6f50b4f330

+ 2
- 0
ChapterOneMicro.iml 查看文件

12
     <orderEntry type="sourceFolder" forTests="false" />
12
     <orderEntry type="sourceFolder" forTests="false" />
13
     <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
13
     <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
14
     <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
14
     <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
15
+    <orderEntry type="library" scope="TEST" name="Maven: junit:junit:4.12" level="project" />
16
+    <orderEntry type="library" scope="TEST" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" />
15
   </component>
17
   </component>
16
 </module>
18
 </module>

+ 52
- 26
src/main/java/com/zipcodewilmington/danny_do_better_exercises/MathUtilities.java 查看文件

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

+ 8
- 4
src/main/java/com/zipcodewilmington/danny_do_better_exercises/PredicateUtilities.java 查看文件

10
      * @return true if `x` is greater than `y`
10
      * @return true if `x` is greater than `y`
11
      */
11
      */
12
     public Boolean isGreaterThan(int x, int y) {
12
     public Boolean isGreaterThan(int x, int y) {
13
-        return null;
13
+        if (x > y) {return true;}
14
+        else return false;
14
     }
15
     }
15
 
16
 
16
     /**
17
     /**
19
      * @return true if `x` is less than `y`
20
      * @return true if `x` is less than `y`
20
      */
21
      */
21
     public Boolean isLessThan(int x, int y) {
22
     public Boolean isLessThan(int x, int y) {
22
-        return null;
23
+        if (x < y) {return true;}
24
+        else return false;
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
+        if (x >= y) {return true;}
34
+        else return false;
32
     }
35
     }
33
 
36
 
34
     /**
37
     /**
37
      * @return true if `x` is less than or equal to `y`
40
      * @return true if `x` is less than or equal to `y`
38
      */
41
      */
39
     public Boolean isLessThanOrEqualTo(int x, int y) {
42
     public Boolean isLessThanOrEqualTo(int x, int y) {
40
-        return null;
43
+        if (x <= y) {return true;}
44
+        else return false;
41
     }
45
     }
42
 }
46
 }

+ 45
- 11
src/main/java/com/zipcodewilmington/danny_do_better_exercises/StringUtilities.java 查看文件

1
 package com.zipcodewilmington.danny_do_better_exercises;
1
 package com.zipcodewilmington.danny_do_better_exercises;
2
+import java.util.Scanner;
2
 
3
 
3
 /**
4
 /**
4
  * Created by dan on 6/14/17.
5
  * Created by dan on 6/14/17.
8
      * @return `Hello World` as a string
9
      * @return `Hello World` as a string
9
      */
10
      */
10
     public static String getHelloWorld() {
11
     public static String getHelloWorld() {
11
-        return null;
12
+        return "Hello World";
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
+
22
+        return firstSegment + secondSegment;
21
     }
23
     }
22
 
24
 
23
     /**
25
     /**
26
      * @return the concatenation of an integer, `firstSegment`, and a String, `secondSegment`
28
      * @return the concatenation of an integer, `firstSegment`, and a String, `secondSegment`
27
      */
29
      */
28
     public static String concatenation(int firstSegment, String secondSegment){
30
     public static String concatenation(int firstSegment, String secondSegment){
29
-        return null;
31
+
32
+        return firstSegment + secondSegment;
30
     }
33
     }
31
 
34
 
32
     /**
35
     /**
34
      * @return the first 3 characters of `input`
37
      * @return the first 3 characters of `input`
35
      */
38
      */
36
     public static String getPrefix(String input){
39
     public static String getPrefix(String input){
37
-        return null;
40
+
41
+        //Scanner scanner = new Scanner(System.in);
42
+        return input.substring(0,3);
38
     }
43
     }
39
 
44
 
40
     /**
45
     /**
42
      * @return the last 3 characters of `input`
47
      * @return the last 3 characters of `input`
43
      */
48
      */
44
     public static String getSuffix(String input){
49
     public static String getSuffix(String input){
45
-        return null;
50
+
51
+        return input.substring(input.length() - 3, input.length());
46
     }
52
     }
47
 
53
 
48
     /**
54
     /**
51
      * @return the equivalence of two strings, `inputValue` and `comparableValue`
57
      * @return the equivalence of two strings, `inputValue` and `comparableValue`
52
      */
58
      */
53
     public static Boolean compareTwoStrings(String inputValue, String comparableValue){
59
     public static Boolean compareTwoStrings(String inputValue, String comparableValue){
54
-        return null;
60
+
61
+        return inputValue.equals(comparableValue);
55
     }
62
     }
56
 
63
 
57
     /**
64
     /**
59
      * @return the middle character of `inputValue`
66
      * @return the middle character of `inputValue`
60
      */
67
      */
61
     public static Character getMiddleCharacter(String inputValue){
68
     public static Character getMiddleCharacter(String inputValue){
62
-        return null;
69
+
70
+        int l = inputValue.length();
71
+        if (l % 2 == 0) {
72
+            return inputValue.charAt( (l/2) - 1 );
73
+        } else {
74
+            return inputValue.charAt( (l-1)/2 );
75
+        }
63
     }
76
     }
64
 
77
 
65
     /**
78
     /**
67
      * @return the first sequence of characters
80
      * @return the first sequence of characters
68
      */
81
      */
69
     public static String getFirstWord(String spaceDelimitedString){
82
     public static String getFirstWord(String spaceDelimitedString){
70
-        return null;
83
+
84
+        return spaceDelimitedString.substring(0, spaceDelimitedString.indexOf(" "));
71
     }
85
     }
72
 
86
 
73
     /**
87
     /**
75
      * @return the second word of a string delimited by spaces.
89
      * @return the second word of a string delimited by spaces.
76
      */
90
      */
77
     public static String getSecondWord(String spaceDelimitedString){
91
     public static String getSecondWord(String spaceDelimitedString){
78
-        return null;
92
+
93
+        //return spaceDelimitedString.substring(spaceDelimitedString.indexOf(" ")+1, spaceDelimitedString.indexOf(" "));
94
+
95
+        //return spaceDelimitedString.split(" ")[1];
96
+        /*
97
+        int start = spaceDelimitedString.indexOf(" ") + 1;
98
+        int end = 0;
99
+        return spaceDelimitedString;
100
+        */
101
+
102
+        return spaceDelimitedString.substring(spaceDelimitedString.indexOf(" ")+1, spaceDelimitedString.length());
103
+
79
     }
104
     }
80
 
105
 
81
     /**
106
     /**
82
      * @param stringToReverse
107
      * @param stringToReverse
83
      * @return an identical string with characters in reverse order.
108
      * @return an identical string with characters in reverse order.
84
      */
109
      */
85
-    public static String reverseTheTwo(String stringToReverse){
86
-        return null;
110
+    public static String reverseTheTwo(String stringToReverse) {
111
+
112
+        String reversed = "";
113
+
114
+        for (int i = stringToReverse.length()-1; i >= 0; i--) {
115
+
116
+            reversed += stringToReverse.charAt(i);
117
+
118
+        }
119
+
120
+        return reversed;
87
     }
121
     }
88
 }
122
 }

+ 1
- 1
src/main/java/com/zipcodewilmington/danny_do_better_exercises/ZipcodeRocks.java 查看文件

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
 }

+ 3
- 3
src/test/java/com/zipcodewilmington/danny_do_better_exercises/TestMathUtilities.java 查看文件

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
146
         // : When
146
         // : When
147
         float actualFloat = primativeTypes.subtract(baseValue,difference);
147
         float actualFloat = primativeTypes.subtract(baseValue,difference);
148
         // : Then
148
         // : Then
149
-        assertEquals(expectedFloat,actualFloat, 0);
149
+        assertEquals(expectedFloat,actualFloat, 0.005);
150
     }
150
     }
151
     @Test
151
     @Test
152
     public void testSubtractions5() {
152
     public void testSubtractions5() {
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
- 2
src/test/java/com/zipcodewilmington/danny_do_better_exercises/TestStringUtilities.java 查看文件

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 = "olleH";
60
+        String expected = "Hel";
60
 
61
 
61
         // : When
62
         // : When
62
         String actual = StringUtilities.getPrefix(input);
63
         String actual = StringUtilities.getPrefix(input);
154
         String expected = "Wilmington";
155
         String expected = "Wilmington";
155
 
156
 
156
         // : When
157
         // : When
157
-        String actual = StringUtilities.getFirstWord(input);
158
+        String actual = StringUtilities.getSecondWord(input);
158
 
159
 
159
         // : Then
160
         // : Then
160
         assertEquals(expected, actual);
161
         assertEquals(expected, actual);

二進制
target/classes/com/zipcodewilmington/danny_do_better_exercises/MathUtilities.class 查看文件


二進制
target/classes/com/zipcodewilmington/danny_do_better_exercises/PredicateUtilities.class 查看文件


二進制
target/classes/com/zipcodewilmington/danny_do_better_exercises/StringUtilities.class 查看文件


二進制
target/classes/com/zipcodewilmington/danny_do_better_exercises/ZipcodeRocks.class 查看文件


二進制
target/test-classes/com/zipcodewilmington/danny_do_better_exercises/TestMathUtilities.class 查看文件


二進制
target/test-classes/com/zipcodewilmington/danny_do_better_exercises/TestStringUtilities.class 查看文件