Python中文网

一个关于 编程问题的解答网站.

有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

我的Java方法没有处理错误。它声明了错误,但下次调用该方法时,它不再正常工作

这是我的代码:

public void move(){
    io.writeOutput(name + " kies een positie om een pion naar te verplaatsen (Maximaal 1 vakje) bijv AB = A naar B ");  
    s = io.readInput();

    if((s.length()==2)){
        c = s.charAt(0);
        k = s.charAt(1);
        System.out.println("correct lenght");
    }
    else{
        System.out.println("incorrect length, try again");
        move();

    }


    if((s.length()==2)&&(c >= 'A' && c<= 'X')&&(k >= 'A' && k<= 'X')){
        if(board.getGameMap(c).getStatus().equals(color) && board.getGameMap(k).getStatus().equals(".") && BoardGeometry.areConnected(c,k)){
            board.getGameMap(c).setStatus(".");
            board.getGameMap(k).setStatus(color);
            System.out.println("pawn placed");
        }
        else{
            System.out.println("invalid move");
                move();
        }   
    }
    else{
        System.out.println("choose a valid input");
        move();
    }
}

第二次调用这段代码时(如果我第一次生成了“不正确的长度”),它的工作方式与应该的不一样,并同时给出了“放置的棋子”输出和“无效移动”输出。 它应该只给我两者中的一个


共 (0) 个答案