在学习了if之后紧接着解除了switch选择语句
先是跟着狂神敲了下面的代码
public static void main(String[] args) { char grade = 'A' switch(grade){ case 'A': System.out.println("优秀"); break; case 'B': System.out.println("良好"); break; case 'C': System.out.println("合格"); break; case 'D': System.out.println("不合格"); break; default: System.out.println("未知"); } }
到这里一切正常
然后我想把前面学习的Scanner使用加到上面代码中
scanner学习视频 狂神yyds
一开始我是先这样改的
public static void main(String[] args) { Scanner scanner = new Scanner(System.in); System.out.println("请输入"); char grade = scanner.next();
这里只copy一部分
发现无论是scanner.next()还是sacnner.nextChar()(后面查了根本没有nextChar()方法)都会报错如下图
搜索后发现以下解决方法
先返回String类型 然后用charAt(0)方法获取第一个字母
Scanner scanner = new Scanner(System.in); System.out.println("请输入"); String g = scanner.next(); char grade = g.charAt(0);
后面能正常运行了