array index out of bounds exception

intel.amd

Mitglied
Guten Tag alle miteinander,
kann jemand mir helfen und mir mein Fehler zeigen.
Vielen dank im voraus.

Java:
import	java.util.ArrayList;

public	class	person	{
private	String	name;
private	String	Vorname;
public person (String name,	String	vorname)	{
this.name	=	name;
this.Vorname	=	vorname;
}

public	String	TOString()	{
return	"name:	"	+	this.name	+	"	Vorname:	"	+	this.Vorname;
}
public	static	void	main(String[]	args)	{
ArrayList<Object> PERSONEN	=	new	ArrayList<Object>();
person	p1	=	new person("Lehmann",	"Peter");
person	p2	=	new	person("Mustermann", "Max");
String	vorname	=	"Schmidt";
PERSONEN.add(p1);
PERSONEN.add(p2);
PERSONEN.add(vorname);
System.out.println(PERSONEN.get(-1));
System.out.println(PERSONEN.get(0));
System.out.println(PERSONEN.get(1));
System.out.println(PERSONEN.get(2));
System.out.println(PERSONEN.get(3));
}
}
 
N

nillehammer

Gast
Schau Dir mal die Fehlermeldung der ArrayIndexOutOfBoundsException an. Dann siehst Du, in welcher Zeile Deines Codes der Fehler steckt. Wenn du Dir DANN noch die API-Doku zu dieser Exception anschaust (hier: ArrayIndexOutOfBoundsException (Java Platform SE 7 )) findest Du ganz schnell heraus, warum sie dort fliegt.

P.S. Wenn Du den Fehler beseitigt hast, wird ein paar Zeilen später wieder eine Fliegen, aber jetzt weißt Du ja, wieso.
 
Zuletzt bearbeitet von einem Moderator:
F

Firephoenix

Gast
Formatiert und kommentiert:
Java:
import java.util.ArrayList;

//Klassennamen UpperCamelCase
public class person {
    private String name;
    // Variablennamen lowerCamelCase
    private String Vorname;

    public person(String name, String vorname) {
	this.name = name;
	this.Vorname = vorname;
    }

    // diese Methode ist nicht die toString()-Methode (case-sensitive Methodennamen in Java)!
    //@Override benutzen wenn man Methoden überschreibt, dann meckert der compiler
    public String TOString() {
	return "name:  " + this.name + "   Vorname:    " + this.Vorname;
    }

    public static void main(String[] args) {
	//Variablennamen, siehe oben
	ArrayList<Object> PERSONEN = new ArrayList<Object>();
	person p1 = new person("Lehmann", "Peter");
	person p2 = new person("Mustermann", "Max");
	String vorname = "Schmidt";
	PERSONEN.add(p1);
	PERSONEN.add(p2);
	PERSONEN.add(vorname);
	//Informatiker zählen in der Regel ab der 0, nicht ab -1.
	//Außerdem: Wie sollen denn 5 Objekte in der Liste sein,
	//wenn du nur 3 Stück einfügst?
	System.out.println(PERSONEN.get(-1));
	System.out.println(PERSONEN.get(0));
	System.out.println(PERSONEN.get(1));
	System.out.println(PERSONEN.get(2));
	System.out.println(PERSONEN.get(3));
    }
}

Gruß
 

Neue Themen


Oben