java的switch语句中的case后面是不是只能执行一条语句,如果不是,想要执行多行代码,该怎么做? 5
Scannersc=newScanner(System.in);System.out.println("请选择你要进行的操作:1.增加学生信息2.删除学生信息3.修改学生...
Scanner sc=new Scanner(System.in);
System.out.println("请选择你要进行的操作:1.增加学生信息2.删除学生信息3.修改学生信息4.查询学生信息");
int choice;
choice=sc.nextInt();
if(choice==1){
System.out.print("请输入要增加学生的姓名:");
s.name=sc.nextLine();
System.out.print("请输入年龄:");
s.age=sc.nextInt();sc.nextLine();
System.out.print("请输入性别:");
s.sex=sc.nextLine();
System.out.print("请输入班级:");
s.sex=sc.nextLine();
System.out.print("请输入QQ:");
s.qq =sc.nextInt();sc.nextLine();
System.out.print("请输入Email:");
s.email=sc.nextLine();
dao.addStudent(s);//添加学生信息的操作
}
else if(choice==2){
System.out.print("请输入要删除学生的姓名:");
s.name=sc.nextLine();
dao.deleteStudent(s);
}
。。。
后面的s.name=sc.nextLine均没有执行,全部跳过了! 展开
System.out.println("请选择你要进行的操作:1.增加学生信息2.删除学生信息3.修改学生信息4.查询学生信息");
int choice;
choice=sc.nextInt();
if(choice==1){
System.out.print("请输入要增加学生的姓名:");
s.name=sc.nextLine();
System.out.print("请输入年龄:");
s.age=sc.nextInt();sc.nextLine();
System.out.print("请输入性别:");
s.sex=sc.nextLine();
System.out.print("请输入班级:");
s.sex=sc.nextLine();
System.out.print("请输入QQ:");
s.qq =sc.nextInt();sc.nextLine();
System.out.print("请输入Email:");
s.email=sc.nextLine();
dao.addStudent(s);//添加学生信息的操作
}
else if(choice==2){
System.out.print("请输入要删除学生的姓名:");
s.name=sc.nextLine();
dao.deleteStudent(s);
}
。。。
后面的s.name=sc.nextLine均没有执行,全部跳过了! 展开
4个回答
2012-11-26
展开全部
可以执行多行代码。你把想执行的多个case语句中的break去掉,这几行代码就可以被执行了。
当然,通常我们不这样用的。
当然,通常我们不这样用的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
你的s对象是个什么对象? student? 那么你student类里有get/set方法吗, 你这样赋值好吗?
其实它不是没有执行, 只是你写了nextLine() 方法是停住了, 你需要再多敲一次回车才能继续
你可以把nextLine改成next()
其实它不是没有执行, 只是你写了nextLine() 方法是停住了, 你需要再多敲一次回车才能继续
你可以把nextLine改成next()
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不是 如果执行多条可以用{}包括
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
能执行多条语句的
直到遇到break才停止。
建议你自己看看这个语法。
直到遇到break才停止。
建议你自己看看这个语法。
更多追问追答
追问
发现问题不是case的使用错误,换成if else也这样,是在执行的时候跳过了一行代码
if(choice==1){
System.out.print("请输入要增加学生的姓名:");
s.name=sc.nextLine();
System.out.print("请输入年龄:");
s.age=sc.nextInt();sc.nextLine();
System.out.print("请输入性别:");
s.sex=sc.nextLine();
。。。
搞不懂s.name =sc.nextLine为什么没执行,而是跳过了
追答
贴完整代码看看。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询