• Hi,
    ich baue gerade Snake in Java und ich verstehe einfach nicht wieso es nicht funktioniert^^ Hab nur wenig Ahnung von Java und hab mich über die Nacht ein wenig eingelesen und angefangen.
    Das Problem scheint irgendwie das Erweitern des Vektors zu sein...

    Die Snake erstelle ich zu beginn mit:

    Das funktioniert auch wunderbar.

    und wenn Sie was aufnimmt dann erweitere Ich Sie mit:

    Code
    private void grow()
        {
            SnakeObj snakeLast = (SnakeObj) this.snake.lastElement();
            System.out.println("[snake_grow] " + snakeLast.posX + " : " + snakeLast.posY);
            this.snake.addElement(new SnakeObj(snakeLast.posX, snakeLast.posY, 0));
            SnakeObj snakeNew = (SnakeObj) this.snake.lastElement();
            snakeNew.setVisible(true);
        }

    das macht er auch noch, aber wenn es dann in die Funktion zur Bewegung geht:

    Dann schmiert das Programm zwischen
    System.out.println("1");
    und
    System.out.println("2");
    ab mit der Fehlermeldung:

    Code
    Exception in thread "main" java.util.ConcurrentModificationException
        at java.util.AbstractList$Itr.checkForComodification(Unknown Source)
        at java.util.AbstractList$Itr.next(Unknown Source)
        at Snake.run(Snake.java:55)
        at Game.gameStart(Game.java:38)
        at Game.<init>(Game.java:26)
        at FormMenu.FormMenuGo(FormMenu.java:40)
        at Main.StartMenu(Main.java:31)
        at Main.main(Main.java:18)

    Hoffe das mir jemand helfen kann wie ich hier weiterkomme :)

  • Alter... Hammer... Ich danke dir, es funktioniert wunderbar, dachte echt nicht das ich so schnell eine Loesung dafuer finde :D

    Die Lösung ist den Vector zu kopieren, da der Iterator sonst nicht klar kommt:

    Code
    Vector currentSnake = new Vector();
            currentSnake.addAll(this.snake);
            Iterator it = currentSnake.iterator();

    kA Ich benutze das ganz normale Eclipse, kannste dir gerne anschauen. Ich muss das bis ende des Jahres für die Berufsschule bauen und ich dachte ich bastel das mal über die Nacht, aber dieses Problem hat meinen Zeitplan ein wenig zerstört...

    Gruß crAzywuLf :D

    Einmal editiert, zuletzt von crAzywuLf (25. Oktober 2009 um 10:16)