无法突破Java中的while循环

时间:2019-01-05 18:42:37

标签: java

我无法退出while循环,请查看并推荐我该怎么做

{ //your comment } 

我希望代码停止执行,但是相反,它运行了很多次。但是while循环一遍又一遍。我想知道为什么吗?

2 个答案:

答案 0 :(得分:0)

在两个break语句中添加returnswitch,以完全离开开关。之后,它将返回到while语句,评估boolean exit并在loop结束时退出false

 public void choose(int choice){
    switch(choice){
      case 1:
        System.out.println("hi");
        break;
      case 2:
        exit=true;
        break;
    }
  }

答案 1 :(得分:0)

您可以尝试将代码分解为较小的方法/函数,这很好。但是,如果您的函数可以相互交互会更好。为了使其成为可能,函数必须在执行后返回一些值:

// returns exit flag
public bool choose(int choice){
    switch(choice){
        case 1:
            System.out.println("hi");
            return false;
        case 2:
            return true;
    }
}

// print instructions and return the choose
public int printInstructions(){
    System.out.println("check 1 to print hi");
    System.out.println("check 2 to exit");
    Scanner scanner=new Scanner(System.in);
    int choice=scanner.nextInt();
    scanner.nextLine();
    return choice;
}


public Admin(){
    while (!exit){
      int result = printInstructions();
      exit = choose(result);
    }
}

我在浏览器中编写代码,因此仍然会有一些小错误。