Hallo,
Das ist meine main-class:
Allerdings läuft er bis zur 3, obwohl er ja nur 0,1 und 2 anwählen sollte. Was ist falsch?
Bei i=3 ist die Bediung ja falsch, da das objekt null ist und er in die Schleife doch garnicht mehr reinkommensollte?
Hatte schon an try & catch gedacht, aber das kann doch keine Lösung sein.
Hier der Fehler:
Das ist meine main-class:
Code:
package gui;
import filmObjekt.*;
class Main {
public static void main(String[] args) {
ObjectListe database = new ObjectListe();
database.addGenre("Horror", "Filme bei denen man sich gruselt");
database.addQuali("Sehr gut", "Sehr gute Bild und Ton Qualität wie bei einer DVD");
database.addFormat("DVD-9", "DVD mit 9 Gigabyte Speicher");
database.addFsk(16, "FSK-16 besonders blutig");
database.addfile("E:/movie/movie1.mpg", database.getQuali(0), database.getFormat(0), "E:/movie/movie1.jpg");
database.addFilm("Freitag der 13", database.getGenre(0), "Freitag der 13. eben", database.getFile(0), database.getFsk(0));
database.addFilm("Freitag der 14", database.getGenre(0), "Freitag der 14. eben", database.getFile(0), database.getFsk(0));
database.addFilm("Freitag der 15", database.getGenre(0), "Freitag der 15. eben", database.getFile(0), database.getFsk(0));
//System.out.println(database.getMovie(database.getFilm(0)));
showDatabase(database);
//Main_Fenster main = new Main_Fenster();
}
public static void showDatabase(ObjectListe database){
for(int i=0; database.getFilm(i) != null; i++){
System.out.println(database.getMovie(database.getFilm(i)));
}
}
}
Allerdings läuft er bis zur 3, obwohl er ja nur 0,1 und 2 anwählen sollte. Was ist falsch?
Bei i=3 ist die Bediung ja falsch, da das objekt null ist und er in die Schleife doch garnicht mehr reinkommensollte?
Hatte schon an try & catch gedacht, aber das kann doch keine Lösung sein.
Hier der Fehler:
Code:
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
at java.util.ArrayList.RangeCheck(Unknown Source)
at java.util.ArrayList.get(Unknown Source)
at filmObjekt.ObjectListe.getFilm(ObjectListe.java:33)
at gui.Main.showDatabase(Main.java:30)
at gui.Main.main(Main.java:22)