慕标2264835
2020-07-04 15:37
public void testModify() {
Scanner input = new Scanner(System.in);
System.out.print("输入要修改的学生ID:");
while(true) {
String ID = input.next();
Student st= students.get(ID);
if(st==null) {
System.out.print("该ID不存在,请重新输入:");
continue;
}else {
System.out.println("当前该ID所对应的学生为:"+st.name);
System.out.print("请输入学生姓名:");
String name = input.next();
st.name = name;
break;
}
}
直接用st.name = name;就没有起到演示修改用put()方法的效果了!
无法接受你重新输入ID
continue是终止这一次循环继续下面的循环,这里else没起到作用,已经跳到while中进行下面的代码了,这里continue应该不可替代else,如果删除continue只留else应该无法接受你的再次输入。
没有问题,不过else可以省去,这里如果有else则是不满足if的条件所运行,因为这里是while的死循环所以continue在这里则是达到终止该循环的效果,所以其实这里else和continue的用处是一样的,else可有可无。
我觉得没什么问题,只不过用的语句不同而已,老师是用了continue;来表示重新开始下一个新循环,如果你加了else,就没必要再用continue;了。 但是可能说用continue的好处是程序在运行时如果进入if语句中,会直接跳转到while语句不需要再进入else语句,这样省却了一点程序的运行让运行更简便快捷,这可能是continue比你这个方法好的原因(如果有的话我觉得这是最可能的区别)
Java入门第三季
409792 学习 · 4340 问题
相似问题
回答 6
回答 4
回答 2
回答 5
回答 1