练习switch语句中遇到的问题(如何用java输入char类型)
练习switch语句中遇到的问题(如何用java输入char类型)
在学习了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使用加到上面代码中
一开始我是先这样改的
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);
后面能正常运行了

浙公网安备 33010602011771号