TP2: Simplify the compacter method in the image class.
[TP_POO.git] / TP2 / Image.java
index 62a710ca5a3c64d9f347ff1127fe5f2a2a70b8d7..8289930d309e5e9f9bb18b5014386ac55b5b4f1d 100644 (file)
@@ -59,14 +59,24 @@ class Image extends Forme implements Compactable {
     }
 
     public void afficher() {
+        String className = this.getClass().getSimpleName();
+        System.out.println("---- " + className + " ----");
         for (int i = 0; i < formeNumber; i++) {
             formeCollection[i].afficher();
         }
     }
 
     public void compacter(int nElements) {
-        for (int i = formeNumber - 1; (i > formeNumber - nElements && !isEmpty()); i--) {
+        // Heavy solution
+        /* int minIndex = formeNumber - nElements - 1;
+        for (int i = formeNumber - 1; (i > minIndex && !isEmpty()); i--) {
             supprimer(i);
+        } */
+        // Lightweight solution
+        if (formeNumber - nElements > 0) {
+            formeNumber -= nElements;
+        } else {
+            formeNumber = 0;
         }
     }