注册 登录
编程论坛 JAVA论坛

小白问题:不明白while(true)循环结束的条件,求解,谢谢!

smokedog 发布于 2019-09-24 20:50, 2823 次点击
代码如下:视频中说是最后的break结束了整个循环。懵了。。。
while(true) {
            id = sc.nextLine();
            boolean flag = false;
            //遍历集合,得到每一个学生
            for(int x=0; x<array.size(); x++) {
                //创建学生对象被赋值
                Student s = array.get(x);
                //获取集合中学生学号,和键盘录入的对象作比较
                if(s.getId().equals(id)) {
                    flag = true;//表示学号已被占用
                }
            }
            if(flag) {
                System.out.println("对不起,您输入的学号已被占用,请重新输入!");
            }else {
                break;
            }
        }
2 回复
#2
y08zh012019-09-25 17:20
如果输入的id在array里,flag=true,break.  
break会跳出所在的最里层的循环,也就是结束while循环
#3
smokedog2019-09-25 21:33
回复 2楼 y08zh01
对的,break所在循环为while循环,所以执行到break这后,while循环结束。if只是一个判断语句。
1