当我尝试使用扫描仪读取整数时出现错误。我使用扫描仪读取它然后将其添加到交换机。
public class Main{
public static void main(String [] args) throws FileNotFoundException
{
int switchVar = 0;
Scanner sc = new Scanner("System.in");
while(switchVar != 5)
{
System.out.println("op");
switchVar = sc.nextInt();
switch(switchVar)
{
case 1 :
//Data
case 2 :
//Data
}
}
sc.close();
}
}
控制台错误:
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at java.util.Scanner.nextInt(Unknown Source)
at Main.main(Main.java:18)
第18行是switchVar = sc.nextInt();谢谢。
答案 0 :(得分:2)
您正在扫描String
"System.in"
,而不是系统输入!
只需删除它周围的双引号即可。
如果您不希望它们落后,请确保您的break
代码后面有//Data
个语句。