Guten Abend!
Ich habe einen Integer-Array, in dem sich mehrere Werte der Größe nach sortiert befinden.
Ich möchte nun zählen, wie oft sich welcher Wert im Array befindet, und die Ergebnisse (Wert + Anzahl) in einen zweiten Array kopieren.
Ich habe aber Probleme mit der folgenden Schleife (Variablennamen habe ich zum leichteren Verständnis angepasst). Diese soll sich jeden einzelnen Wert angucken und mit dem nachfolgenden Wert vergleichen. Sind sie unterschiedlich, bedeutet das ja dass für den aktuellen Wert "fertig gezählt" wurde, also wird der Wert und seine Anzahl in ein zweites Array übertragen und das ganze soll mit dem nächsten Wert fortgesetzt werden. Ich bekomme nun aber eine ArrayIndexOutOfBoundsInception für die if-Schleife, und habe keine ahnung woran es liegt.
Habe auch schon Schritt für Schritt die Veränderung der Variablen aufgeschrieben um zu gucken wo etwas außer Kontrolle gerät, aber eigentlich müsste alles klappen. Hat jemand ne Idee?
edit: Jetzt wo ich meinen Post noch mal gegenlese, merke ich dass das break nur die if-Schleife und nicht die while-Schleife beendet... daran könnte es liegen... wird gleich mal getestet.
edit2: Hm, ist zwar leicht falsch, aber dürfte kein Grund für den ausgegebenen Fehler bedeuten...
Ich habe einen Integer-Array, in dem sich mehrere Werte der Größe nach sortiert befinden.
Ich möchte nun zählen, wie oft sich welcher Wert im Array befindet, und die Ergebnisse (Wert + Anzahl) in einen zweiten Array kopieren.
Ich habe aber Probleme mit der folgenden Schleife (Variablennamen habe ich zum leichteren Verständnis angepasst). Diese soll sich jeden einzelnen Wert angucken und mit dem nachfolgenden Wert vergleichen. Sind sie unterschiedlich, bedeutet das ja dass für den aktuellen Wert "fertig gezählt" wurde, also wird der Wert und seine Anzahl in ein zweites Array übertragen und das ganze soll mit dem nächsten Wert fortgesetzt werden. Ich bekomme nun aber eine ArrayIndexOutOfBoundsInception für die if-Schleife, und habe keine ahnung woran es liegt.
Habe auch schon Schritt für Schritt die Veränderung der Variablen aufgeschrieben um zu gucken wo etwas außer Kontrolle gerät, aber eigentlich müsste alles klappen. Hat jemand ne Idee?
Code:
for(int i = 0; i < intArray.length; i++)
{
while(gleicheZahl = true)
{
zaehler++;
if(intArray[i] != intArray[i+1])
{
gleicheZahl = false;
break;
}
i++;
}
ausgabeArray[i][0] = helfbild[f];
ausgabeArray[i][1] = zaehler;
zaehler = 0;
}
edit: Jetzt wo ich meinen Post noch mal gegenlese, merke ich dass das break nur die if-Schleife und nicht die while-Schleife beendet... daran könnte es liegen... wird gleich mal getestet.
edit2: Hm, ist zwar leicht falsch, aber dürfte kein Grund für den ausgegebenen Fehler bedeuten...
Zuletzt bearbeitet: