请输入学生ID的时候为什么要用while循环,用for循环可以吗?

来源:5-2 学生选课---使用 Map 添加学生

激流勇进__

2015-12-27 18:33

int i=0;

while(i<=3){

System.out.println("请输入学生ID");

}

可以换成for循环吗?

for(int i=0;i<=3;i++){

System.out.println("请输入学生的姓名");

}

写回答 关注

2回答

  • _泥人_
    2015-12-27 19:10:47
    已采纳

    这个属于循环的灵活应用,用for循环也行,但是你感觉用那个比较简便而又能满足需求呢?那就用那个吧。

    激流勇进__

    非常感谢!

    2016-01-03 20:31:05

    共 1 条回复 >

  • baicailianlian
    2016-02-23 00:08:16

    这里没有给出完整代码,

     public void testPut(){

            Scanner in = new Scanner(System.in);

            int i=0;

            while(i<3){

                System.out.println("请输入学生ID:");

                String ID = in.next();

                //判断学生ID是否被占用

                Student st = students.get(ID);

                if(st==null){

                    System.out.println("请输入学生姓名:");

                    String name = in.next();

                    //创建一个新的学生对象实例

                    Student newStudent = new Student(ID,name);

                    //通过调用put方法,添加ID-学生映射

                    students.put(ID,newStudent);

                    System.out.println("成功添加学生"+students.get(ID).name);

                    i++;      //成功添加了一个学生

                }else {

                    System.out.println("该学生ID已被占用!");

                    continue;

                }

            }

        }

    我觉得这里用while循环更合适,因为想要添加三个学生,但是输入学生ID 的时候可能是被占用的,则这次循环相当于无效,用while(i<3)并不表示循环3次,可能循环多次,但是有效添加学生次数为3次;用for则只循环3次,可能会出现ID被占用,不一定能添加3个学生

    暮女神

    厉害了!

    2017-02-08 14:43:21

    共 2 条回复 >

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题