在嵌套if else语句周围放置一个循环

时间:2016-11-05 00:52:15

标签: java loops

我在使用Java方面有点新鲜。我正在制作一个收集学生姓名和身份证的程序,当之后输入正确的身份证时,它会吐出该学生的信息。样本输出看起来像这样:您想输入多少学生? (2)他们的名字是什么? (莎莉,杰克)他们的身份证是什么? (2332,5631)你想找一个学生吗? (Y)请输入他们的ID:(2332)我们找到了Sally!

以下是搜索学生代码的代码片段:

        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)他们的名字是什么? (莎莉,杰克,瑞克)他们的身份证是什么? (2332,5631,3005)你想找一个学生吗? (Y)请输入他们的ID:(2332)我们找到了莎莉!你想找另一个学生吗? (Y)请输入他们的ID:(5631)我们找到了杰克!你想找另一个学生吗? (N)感谢您使用我们的系统!

有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

你需要重置id才能获得新的id。尝试纠正你的代码:

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!");
}