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均没有执行,全部跳过了!
展开
 我来答
匿名用户
2012-11-26
展开全部
可以执行多行代码。你把想执行的多个case语句中的break去掉,这几行代码就可以被执行了。
当然,通常我们不这样用的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
GoddardHugh
推荐于2018-05-11 · TA获得超过250个赞
知道答主
回答量:118
采纳率:100%
帮助的人:45.9万
展开全部
你的s对象是个什么对象? student? 那么你student类里有get/set方法吗, 你这样赋值好吗?

其实它不是没有执行, 只是你写了nextLine() 方法是停住了, 你需要再多敲一次回车才能继续
你可以把nextLine改成next()
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
823929500
2012-11-26
知道答主
回答量:33
采纳率:0%
帮助的人:6.7万
展开全部
不是 如果执行多条可以用{}包括
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
duzc2
2012-11-26 · TA获得超过2512个赞
知道大有可为答主
回答量:1987
采纳率:50%
帮助的人:2056万
展开全部
能执行多条语句的
直到遇到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为什么没执行,而是跳过了
追答
贴完整代码看看。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式