2016-11-05 82 views
0

我在使用Java方面有点新鲜。我正在制作一个收录学生姓名和身份证的程序,当之后输入正确的身份证件时,会吐出该学生的信息。示例输出将如下所示:您想输入多少个学生? (2)他们的名字是什么? (Sally,Jack)他们的ID是什么? (2332,5631)你想搜索一个学生吗? (Y)请输入他们的ID:(2332)我们找到了Sally!围绕嵌套if else语句进行循环

下面是代码的片段,搜索回来的学生:

 System.out.println("Would you like to search for a student?"); 
     String answer = scan.next(); 

     if (answer.equals("Y")) { 
      System.out.println("Please enter an ID:"); 
      int id = scan.nextInt(); 
      boolean found = Student.lookupID(list, id); 

      if(found) 
       System.out.println("Student was found. This student is: " + studentName + ", Student ID " + id); //fix this 
      else 
       System.out.println("Error"); 
     } 
     else { 
      System.out.println("Thanks for using this system!"); 
    } 
} 

}

现在,我想循环的代码,从而使输出现在看起来像这个:你想输入多少名学生? (3)他们的名字是什么? (Sally,Jack,Rick)他们的ID是什么? (2332,5631,3005)你想搜索一个学生吗? (Y)请输入他们的ID:(2332)我们找到了Sally!你想寻找另一名学生吗? (Y)请输入他们的ID:(5631)我们找到Jack!你想寻找另一名学生吗? (N)感谢您使用我们的系统!

有人能帮助我吗?

+0

你的问题不是关于Java明确。你试过的时候有什么障碍? –

回答

0

需要重启id来计划能够得到新的id.Try纠正你这样的代码:

System.out.println("Would you like to search for a student?"); 
String answer = scan.next(); 

int id = 0; //RESET THE ID TO BE ABLE REPLAYIN WORK! 
if (answer.equals("Y")) { 
    System.out.println("Please enter an ID:"); 
    id = scan.nextInt(); 
    boolean found = Student.lookupID(id); 

    if (found) 
     System.out.println("Student was found. This student is: " + studentName + ", Student ID " + id); // fix 
                              // this 
    else 
     System.out.println("Error"); 
} else { 
    System.out.println("Thanks for using this system!"); 
} 
+0

谢谢。你会知道如何循环它吗?我正在尝试使用一种做法。我遇到了麻烦。 @Coder ACJHP –

+0

**使用do while语句如下:**'do {// your codes} while(answer.equals(“Y”));'**这意味着只要正确的答案它将工作* * –