Doppelte Array-Einträge
-
Hallo,
erstmal ein CodeschnipselString content2[]=c.split(" "); Arrays.sort(content2); for(int i=1;i<content2.length;i++) { if(content2[i].equals(content2[i-1])) content2[i]=""; }
Wie ihr seht, versuche ich auf diese Weise doppelte Einträge aus meinem Array (content2) zu werfen, allerdings hat der aktuelle Weg noch das Problem, dass ein leeres "Feld" im Array zurückbleibt.
Ich möchte lieber, dass keine Lücke zurückbleibt und der Rest halt eine Stelle vorgezogen wird.Wie geht das ?
Ich hatte an sowas wie content2[i].delete() gedacht, nur leider gibt es sowas nicht.
Also ? Was meint ihr ?
Danke
Romeo-G
-
Benutze java.util.Set !
http://java.sun.com/docs/books/tutorial/collections/interfaces/index.html
-
Ja und dann ??? das hat mir irgendwie nicht wirklich geholfen ...
-
Die Idee bei dem Beitrag von ZaforBinFadil war, an Stelle des Arrays das Collection Framework zu benutzen. Hier hast du auch die Möglichkeit, mit remove einen Eintrag zu entfernen.
Wenn du um ein Array nicht herumkommst, wirst du einen zweiten Zähler brauchen. Der eine positioniert auf dem letzen Element, das in der endgültigen Liste enthalten sein soll, während der zweite nach Duplikaten ausschau hält.
/Dirk