为了账号安全,请及时绑定邮箱和手机立即绑定

testModify中的代码这么写可以么,运行出来没有问题

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;

}

}


正在回答

5 回答

直接用st.name = name;就没有起到演示修改用put()方法的效果了!

0 回复 有任何疑惑可以回复我~

无法接受你重新输入ID

0 回复 有任何疑惑可以回复我~

continue是终止这一次循环继续下面的循环,这里else没起到作用,已经跳到while中进行下面的代码了,这里continue应该不可替代else,如果删除continue只留else应该无法接受你的再次输入。

0 回复 有任何疑惑可以回复我~

没有问题,不过else可以省去,这里如果有else则是不满足if的条件所运行,因为这里是while的死循环所以continue在这里则是达到终止该循环的效果,所以其实这里else和continue的用处是一样的,else可有可无。

0 回复 有任何疑惑可以回复我~

我觉得没什么问题,只不过用的语句不同而已,老师是用了continue;来表示重新开始下一个新循环,如果你加了else,就没必要再用continue;了。  但是可能说用continue的好处是程序在运行时如果进入if语句中,会直接跳转到while语句不需要再进入else语句,这样省却了一点程序的运行让运行更简便快捷,这可能是continue比你这个方法好的原因(如果有的话我觉得这是最可能的区别)

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

testModify中的代码这么写可以么,运行出来没有问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信