ArrayOutOfBounds - Problem mit charAt?

prime94

Mitglied
Hallihallo, hab ein kleines Problem mit dieser while-Schleife:
Ich bekomme beim Testen immer eine ArrayOutOfBounds Exception.
Das Problem habe ich mittlerweile soweit eingegrenzt, dass tempIndex in irgendeiner Weise nicht der Zahl entsprechen kann, die sie sein sollte. (Bevor jemand fragt: die Arrays sind für die genutzten Zahlen groß genug). Bin Anfänger und hab keine Ahnung wo das Problem liegt, daher wäre ich für jede Hilfe dankbar. Die Funktion der Schleife ist es übrigens alle Zahlen einer Liste in ein Zweidimensionales Array einzuordnen undzwar nach der letzten Stelle geordnet.

[Java]
while(!pList.isEmpty()){
tempZahl=(Integer)pList.getObject();
tempString=String.valueOf(tempZahl);
tempLänge=tempString.length()-1;
tempIndex=(int)tempString.charAt(tempLänge);
parting[tempIndex][(anzahl[tempIndex])]=tempZahl;
anzahl[tempIndex]++;
pList.remove();
}
[/code]

Danke
mfG Prime
 
Hinweis: (int)'1' ist nicht 1
Warum wandelst Du eine Zahl in einen String um, um dann eine Ziffer daraus wieder in eine Zahl zu wandeln? Mit Zahlen kann man rechnen.
 
Hinweis: (int)'1' ist nicht 1
Warum wandelst Du eine Zahl in einen String um, um dann eine Ziffer daraus wieder in eine Zahl zu wandeln? Mit Zahlen kann man rechnen.

Danke schonmal, das war eigentlich der springende Punkt. Allerdings hilft das nicht das Problem zu lösen, da ich diesen Schritt eigentlich brauche. Wie komme ich sonst an die letzte Stelle der Zahl?
 
Vor 2 bis 3 Tagen wurde das gleiche Problem bereits besprochen, leider finde ich den Thread gerade nicht mehr.

Du könntest immer 48 abziehen.

48 deshalb weil, diese Zahl bei char immer draufgepackt wird. Es hieß allerdings diese Methode wäre unsauber, habe es nicht weiter verfolgt 🙂

Auf den Wert von 48 kommst du wie folgt.

Java:
public class Test {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		
		
		int y = '0';
		System.out.println("'1'=  " +  y);
	}

}
 
Das wäre eine Möglichkeit, ja. Allerdings hatte ich noch vor nach den anderen Stellen der Zahl zu ordnen. Was damit nicht zu lösen ist..
 
Zuletzt bearbeitet:

Neue Themen


Zurück
Oben