Hallo,
ich möchte für einzelne Wörter in einem Array namens "Liste" die Häufigkeit aufeinanderfolgender Duplikate speichern. Hier ist der Code:
Das gibt dann wie gewünscht das folgende Ergebnis:
Was ich dabei allerdings nicht verstehe, ist das folgende Verhalten: Wenn ich die erste Zeile durch die folgenden austausche...
...dann klappt es nicht mehr. Stattdessen gibt es das folgende Resultat:
Was mache ich da falsch? Ich bin für jeden Tipp dankbar!
ich möchte für einzelne Wörter in einem Array namens "Liste" die Häufigkeit aufeinanderfolgender Duplikate speichern. Hier ist der Code:
Code:
String[] Liste = {"katze", "hund", "hund"};
String WoerterEinzeln[];
WoerterEinzeln = new String[Liste.length];
int Haeufigkeiten[];
Haeufigkeiten = new int[Liste.length];
WoerterEinzeln[0] = Liste[0];
Haeufigkeiten[0] = 1;
int j;
int k = 0;
for (j=1; j<Liste.length; j=j+1) {
if (Liste[j] == Liste[j-1]) {
Haeufigkeiten[k] = Haeufigkeiten[k] + 1;
} else {
k = k + 1;
WoerterEinzeln[k] = Liste[j];
Haeufigkeiten[k] = 1;
}
}
Das gibt dann wie gewünscht das folgende Ergebnis:
katze 1
hund 2
Was ich dabei allerdings nicht verstehe, ist das folgende Verhalten: Wenn ich die erste Zeile durch die folgenden austausche...
Code:
String Text = "katze hund hund";
String[] Liste = Text.split(" ");
...dann klappt es nicht mehr. Stattdessen gibt es das folgende Resultat:
katze 1
hund 1
hund 1
Was mache ich da falsch? Ich bin für jeden Tipp dankbar!