Просмотр исходного кода

difference-of-squares: adjust API to use instance method

Fixes issue #253.
Frida Johanne Tveit 9 лет назад
Родитель
Сommit
cec77ac4ec

exercises/difference-of-squares/src/example/java/Difference.java → exercises/difference-of-squares/src/example/java/DifferenceOfSquaresCalculator.java Просмотреть файл

1
 import java.util.stream.IntStream;
1
 import java.util.stream.IntStream;
2
 
2
 
3
-public final class Difference {
3
+public final class DifferenceOfSquaresCalculator {
4
 
4
 
5
-    public static int computeSquareOfSumTo(final int input) {
5
+    public int computeSquareOfSumTo(final int input) {
6
         final int sum = input * (input + 1) / 2;
6
         final int sum = input * (input + 1) / 2;
7
         return (int) Math.pow(sum, 2);
7
         return (int) Math.pow(sum, 2);
8
     }
8
     }
9
 
9
 
10
-    public static int computeSumOfSquaresTo(final int input) {
10
+    public int computeSumOfSquaresTo(final int input) {
11
         return IntStream.rangeClosed(1, input)
11
         return IntStream.rangeClosed(1, input)
12
                 .map(i -> (int) Math.pow(i, 2))
12
                 .map(i -> (int) Math.pow(i, 2))
13
                 .sum();
13
                 .sum();
14
     }
14
     }
15
 
15
 
16
-    public static int betweenSquareOfSumAndSumOfSquaresTo(final int input) {
16
+    public int betweenSquareOfSumAndSumOfSquaresTo(final int input) {
17
         return computeSquareOfSumTo(input) - computeSumOfSquaresTo(input);
17
         return computeSquareOfSumTo(input) - computeSumOfSquaresTo(input);
18
     }
18
     }
19
 
19
 

+ 0
- 5
exercises/difference-of-squares/src/main/java/Difference.java Просмотреть файл

1
-public final class Difference {
2
-    
3
-
4
-
5
-}

+ 5
- 0
exercises/difference-of-squares/src/main/java/DifferenceOfSquaresCalculator.java Просмотреть файл

1
+public final class DifferenceOfSquaresCalculator {
2
+    
3
+
4
+
5
+}

exercises/difference-of-squares/src/test/java/DifferenceTest.java → exercises/difference-of-squares/src/test/java/DifferenceOfSquaresCalculatorTest.java Просмотреть файл

1
+import org.junit.Before;
1
 import org.junit.Ignore;
2
 import org.junit.Ignore;
2
 import org.junit.Test;
3
 import org.junit.Test;
3
 
4
 
4
 import static org.junit.Assert.assertEquals;
5
 import static org.junit.Assert.assertEquals;
5
 
6
 
6
-public final class DifferenceTest {
7
+public final class DifferenceOfSquaresCalculatorTest {
8
+    private DifferenceOfSquaresCalculator calculator;
9
+
10
+    @Before
11
+    public void setUp() {
12
+        calculator = new DifferenceOfSquaresCalculator();
13
+    }
7
 
14
 
8
     @Test
15
     @Test
9
     public void testSquareOfSum5() {
16
     public void testSquareOfSum5() {
10
         final int expected = 225;
17
         final int expected = 225;
11
-        final int actual = Difference.computeSquareOfSumTo(5);
18
+        final int actual = calculator.computeSquareOfSumTo(5);
12
         assertEquals(expected, actual);
19
         assertEquals(expected, actual);
13
     }
20
     }
14
 
21
 
16
     @Test
23
     @Test
17
     public void testSquareOfSum10() {
24
     public void testSquareOfSum10() {
18
         final int expected = 3025;
25
         final int expected = 3025;
19
-        final int actual = Difference.computeSquareOfSumTo(10);
26
+        final int actual = calculator.computeSquareOfSumTo(10);
20
         assertEquals(expected, actual);
27
         assertEquals(expected, actual);
21
     }
28
     }
22
 
29
 
24
     @Test
31
     @Test
25
     public void testSquareOfSum100() {
32
     public void testSquareOfSum100() {
26
         final int expected = 25502500;
33
         final int expected = 25502500;
27
-        final int actual = Difference.computeSquareOfSumTo(100);
34
+        final int actual = calculator.computeSquareOfSumTo(100);
28
         assertEquals(expected, actual);
35
         assertEquals(expected, actual);
29
     }
36
     }
30
 
37
 
32
     @Test
39
     @Test
33
     public void testSumOfSquares5() {
40
     public void testSumOfSquares5() {
34
         final int expected = 55;
41
         final int expected = 55;
35
-        final int actual = Difference.computeSumOfSquaresTo(5);
42
+        final int actual = calculator.computeSumOfSquaresTo(5);
36
         assertEquals(expected, actual);
43
         assertEquals(expected, actual);
37
     }
44
     }
38
 
45
 
40
     @Test
47
     @Test
41
     public void testSumOfSquares10() {
48
     public void testSumOfSquares10() {
42
         final int expected = 385;
49
         final int expected = 385;
43
-        final int actual = Difference.computeSumOfSquaresTo(10);
50
+        final int actual = calculator.computeSumOfSquaresTo(10);
44
         assertEquals(expected, actual);
51
         assertEquals(expected, actual);
45
     }
52
     }
46
 
53
 
48
     @Test
55
     @Test
49
     public void testSumOfSquares100() {
56
     public void testSumOfSquares100() {
50
         final int expected = 338350;
57
         final int expected = 338350;
51
-        final int actual = Difference.computeSumOfSquaresTo(100);
58
+        final int actual = calculator.computeSumOfSquaresTo(100);
52
         assertEquals(expected, actual);
59
         assertEquals(expected, actual);
53
     }
60
     }
54
 
61
 
56
     @Test
63
     @Test
57
     public void testDifferenceOfSquares0() {
64
     public void testDifferenceOfSquares0() {
58
         final int expected = 0;
65
         final int expected = 0;
59
-        final int actual = Difference.betweenSquareOfSumAndSumOfSquaresTo(0);
66
+        final int actual = calculator.betweenSquareOfSumAndSumOfSquaresTo(0);
60
         assertEquals(expected, actual);
67
         assertEquals(expected, actual);
61
     }
68
     }
62
 
69
 
64
     @Test
71
     @Test
65
     public void testDifferenceOfSquares5() {
72
     public void testDifferenceOfSquares5() {
66
         final int expected = 170;
73
         final int expected = 170;
67
-        final int actual = Difference.betweenSquareOfSumAndSumOfSquaresTo(5);
74
+        final int actual = calculator.betweenSquareOfSumAndSumOfSquaresTo(5);
68
         assertEquals(expected, actual);
75
         assertEquals(expected, actual);
69
     }
76
     }
70
 
77
 
72
     @Test
79
     @Test
73
     public void testDifferenceOfSquares10() {
80
     public void testDifferenceOfSquares10() {
74
         final int expected = 2640;
81
         final int expected = 2640;
75
-        final int actual = Difference.betweenSquareOfSumAndSumOfSquaresTo(10);
82
+        final int actual = calculator.betweenSquareOfSumAndSumOfSquaresTo(10);
76
         assertEquals(expected, actual);
83
         assertEquals(expected, actual);
77
     }
84
     }
78
 
85
 
80
     @Test
87
     @Test
81
     public void testDifferenceOfSquares100() {
88
     public void testDifferenceOfSquares100() {
82
         final int expected = 25164150;
89
         final int expected = 25164150;
83
-        final int actual = Difference.betweenSquareOfSumAndSumOfSquaresTo(100);
90
+        final int actual = calculator.betweenSquareOfSumAndSumOfSquaresTo(100);
84
         assertEquals(expected, actual);
91
         assertEquals(expected, actual);
85
     }
92
     }
86
 
93