TP2: Implement the Image class as a Comparator<Image> interface.
[TP_POO.git] / TP2 / Image.java
index 8289930d309e5e9f9bb18b5014386ac55b5b4f1d..d508e75d4fc647d58f38bfa97432a46c8d29c4ff 100644 (file)
@@ -1,5 +1,6 @@
+import java.util.Comparator;
 
-class Image extends Forme implements Compactable {
+public class Image extends Forme implements Compactable, Comparable<Image>, Comparator<Image> {
     final int IMAGE_MAX_SIZE = 100;
     Forme[] formeCollection;
     int formeNumber;
@@ -16,6 +17,10 @@ class Image extends Forme implements Compactable {
         formeNumber = 0;
     }
 
+    public int getSize() {
+        return formeNumber;
+    }
+
     private boolean isEmpty() {
         return (formeNumber == 0);
     }
@@ -80,4 +85,12 @@ class Image extends Forme implements Compactable {
         }
     }
 
+    public int compareTo(Image image) {
+        return formeNumber - image.getSize();
+    }
+
+    public int compare(Image image1, Image image2) {
+        return image1.getSize() - image2.getSize();
+    }
+
 }