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均没有执行,全部跳过了!
发现问题不是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为什么没执行,而是跳过了
贴完整代码看看。
追问贴了,在问题补充!
追答你输入完1之后按了回车,
但是nextInt只取那个1
回车留在了缓冲区
你s.name取到了那个回车
在s.name之前再取一次nextLine就行了
java的switch语句中的case后面是不是只能执行一条语句,如果不是,想 ...
可以执行多行代码。你把想执行的多个case语句中的break去掉,这几行代码就可以被执行了。当然,通常我们不这样用的。
java,switch语句中case的疑问
switch case 还要配合break使用。如果不break,那就会继续执行下面的,因为存在这样的需求。
Java 基础知识之 switch 语句和 yield 关键字
这是经典的 switch 语句写法,包含多个 break 语句。虽然这一写法沿用了 C 语言的原始语法,但现今看来显得陈旧且繁琐。Java 12 对 switch 语句进行了改进,优化了其使用方式。现在可直接在 case 后面使用 -> 符号,仅执行紧跟其后的语句,无需 break 关键字,且避免了穿透效应。如果需要多条语句,则...
switch case用法举例
你只想执行这一个case语句, 不想执行其他case, 那么就需要在这个case语句后面加上break, 跳出swich语句.3) 当switch后面括号内“表达式”的值与某 个case后面的"常量表达式"的值相等时. 就执行此case后面的语句。执行完一个case后面的语句后,流程控制转移到下一个case缕续执行, 如果你只想执行这一...
java 中 switch\/case 如何表达多选?
本来switch只会匹配到一种条件,如果都不匹配,会执行default里面的语句。如果没定义不执行,所以不可能会出现多选的问题。
java Switch语句编译出错 孤立的case是什么意思
case 后面是常量表达式,并且必须是与条件表达式类型相兼容的值!也就是说,比如你的switch(a)里面的a是int 型的,那么case 后的值也应是和int 兼容的,如果你定义的a是字符型的话,那么b就应该加上单引号。另外,常量表达式的值可以是字符,但不能是字符串。
Java switch case 语句
Java中的switch case语句是一种条件判断工具,用于根据变量的值,执行相应的代码分支。其工作原理是首先对变量进行比较,找到匹配的case值后执行该case下的代码,如果代码块中包含break语句,程序会跳出switch语句的执行,否则会继续匹配下一个case。以下是switch case的一些关键点:其基本语法如下:当程序执行...
java 中 switch case 语句
语句;} 1.default就是如果没有符合的case就执行它,default并不是必须的.2.case后的语句可以不用大括号.3.switch语句的判断条件可以接受int,byte,char,short,不能接受其他类型.4.一旦case匹配,就会顺序执行后面的程序代码,而不管后面的case是否匹配,直到遇见break,利用这一特性可以让好几个case执行统一...
switch case基本用法总结
Java switch case 语句概述 switch case 语句用于判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。此语句结构简洁,特别适用于多条件判断。语法与规则 switch case 语句的语法格式如下:switch(expression){ case value :\/\/执行语句 break;\/\/可选 case value :\/\/执行语句 break;\/\/可...
switch语句中case后只能加什么?
case后)必须是常量表达式(constantExpression),如42或者'4'。case标签(case后)必须是惟一性的表达式;也就是说,不允许两个case具有相同的值。其他规则:只能针对基本数据类型中的整型类型使用switch,这些类型包括int、char等。对于其他类型,则必须使用if语句。switch()的参数类型不能为实型 。