Hey,
Also ich hab ein Problem mit einer Funktion! Und zwar hab ich ein String-Array. Jetzt muss ich dort in die Mitte ein neues Element kopieren und alle anderen Elemente nach hinten verschieben. Dazu hab ich mir auch schon eine Lösung überlegt.
1. Ich erstelle ein neues Array = array2
2. Alles Strings die Kleiner als der übergebene Index sind können genauso übernommen werden
3. index und i sind gleich dann wird der neue Wert "add" übernommen
4. Alles was größer ist als index wird dann eingefügt und einfach i-1 genommen.
So die Theorie ! Hier die Praxis:
Und das ist die Exception:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
Ich weiß zwar was sie bedeutet komm aber auf keine andere Lösung -.-
Gruß Swoop
Also ich hab ein Problem mit einer Funktion! Und zwar hab ich ein String-Array. Jetzt muss ich dort in die Mitte ein neues Element kopieren und alle anderen Elemente nach hinten verschieben. Dazu hab ich mir auch schon eine Lösung überlegt.
1. Ich erstelle ein neues Array = array2
2. Alles Strings die Kleiner als der übergebene Index sind können genauso übernommen werden
3. index und i sind gleich dann wird der neue Wert "add" übernommen
4. Alles was größer ist als index wird dann eingefügt und einfach i-1 genommen.
So die Theorie ! Hier die Praxis:
Java:
public void addElements(String add, int index)
{
// Überprüfen ob this.parts leer ist
if (this.parts == null) {
this.parts = new String[1];
this.parts[0] = add;
}
else {
// Zweites Array erstellen
String[] array2 = new String[this.parts.length + 1];// 1.
for (int i = 0; i < array2.length; i++) {
if (this.parts[i].length() < index)// 2.
array2[i] = this.parts[i];
else if (this.parts[i].length() == index)// 3.
array2[i] = add;
else if (this.parts[i].length() > index)// 4.
array2[i] = this.parts[i - 1];
}
this.parts = array2;// Und zum Schluss Array Speichern
}
for (int i = 0; i < this.parts.length; i++) { // Testausgabe!
System.out.println(this.parts[i]);
}
}
Und das ist die Exception:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -1
Ich weiß zwar was sie bedeutet komm aber auf keine andere Lösung -.-
Gruß Swoop