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

saddle-points: make MatrixCoordinate implement Comparable

The saddle-points tests make it seem like you can use any kind of set
for your output. However, if you use TreeSet then the tests will fail
because MatrixCoordinate doesn't implement Comparable.

MatrixCoordinate does now implement Comparable to preent this failure.
Frida Tveit пре 9 година
родитељ
комит
c9782c11ba

+ 7
- 1
exercises/saddle-points/.meta/src/reference/java/MatrixCoordinate.java Прегледај датотеку

1
-class MatrixCoordinate {
1
+class MatrixCoordinate implements Comparable<MatrixCoordinate> {
2
     private final int row;
2
     private final int row;
3
     private final int col;
3
     private final int col;
4
 
4
 
30
         result = 31 * result + col;
30
         result = 31 * result + col;
31
         return result;
31
         return result;
32
     }
32
     }
33
+
34
+    @Override
35
+    public int compareTo(MatrixCoordinate o) {
36
+        int rowComparison = Integer.compare(row, o.row);
37
+        return (rowComparison == 0) ? Integer.compare(col, o.col) : rowComparison;
38
+    }
33
 }
39
 }

+ 7
- 1
exercises/saddle-points/src/main/java/MatrixCoordinate.java Прегледај датотеку

1
-class MatrixCoordinate {
1
+class MatrixCoordinate implements Comparable<MatrixCoordinate> {
2
     private final int row;
2
     private final int row;
3
     private final int col;
3
     private final int col;
4
 
4
 
30
         result = 31 * result + col;
30
         result = 31 * result + col;
31
         return result;
31
         return result;
32
     }
32
     }
33
+
34
+    @Override
35
+    public int compareTo(MatrixCoordinate o) {
36
+        int rowComparison = Integer.compare(row, o.row);
37
+        return (rowComparison == 0) ? Integer.compare(col, o.col) : rowComparison;
38
+    }
33
 }
39
 }