X-Git-Url: https://git.piment-noir.org/?p=TP_POO.git;a=blobdiff_plain;f=TP2%2FImage.java;h=62a710ca5a3c64d9f347ff1127fe5f2a2a70b8d7;hp=6ec38bfd9331fd72d073f5e474f72fd99af518a3;hb=22758baf926b8b833ce6a38566eb157e13fbd3fb;hpb=009c5b1e63be46a50ba2c551c96369f461f44a93 diff --git a/TP2/Image.java b/TP2/Image.java index 6ec38bf..62a710c 100644 --- a/TP2/Image.java +++ b/TP2/Image.java @@ -1,5 +1,5 @@ -class Image extends Forme { +class Image extends Forme implements Compactable { final int IMAGE_MAX_SIZE = 100; Forme[] formeCollection; int formeNumber; @@ -46,4 +46,28 @@ class Image extends Forme { return rtVal; } + public boolean supprimer(int index) { + boolean rtVal = false; + if (!isEmpty()) { + for (int j = index; (j < formeNumber - 1 && index < formeNumber); j++) { + formeCollection[j] = formeCollection[j + 1]; + } + rtVal = true; + formeNumber--; + } + return rtVal; + } + + public void afficher() { + 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--) { + supprimer(i); + } + } + }