packagea;importjava.util.Scanner;publicclasse{publicstaticvoidmain(String[]args){Scannerin=newScanner(System.in);System.out.println("请输入学生的人数:");intrenshu=in.nex...
package a;
import java.util.Scanner;
public class e {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
System.out.println("请输入学生的人数:");
int renshu=in.nextInt();
System.out.println("请输入课程的数目:");
int courseNum=in.nextInt();
String[] name=new String[renshu];
String[] course=new String[courseNum];
for(int i=0;i
System.out.println("请定义第"+(i+1)+"门课程的名字:");
course[i]=in.next();
}
for(int i=0;i
System.out.println(course[i]);
}
in.close();
}
}
上面课程名字输入英文可以正常循环,输入中文后循环混乱并报错。下面是试验结果:
请输入学生的人数:
1
请输入课程的数目:
2
请定义第1门课程的名字:
数学
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Scanner.java:864)
at java.util.Scanner.next(Scanner.java:1485)
at java.util.Scanner.next(Scanner.java:1418)
at a.e.main(e.java:14)
谁能告诉我问题出在哪里? 我是严格按照教程写的,视频中正常编译没问题,到我这里不行。而且“
in.close();”这一句教程中没有却没事,到我这没有就不行,能帮我解释一下吗?
程序可以在cmd中正常运行,myEclipse中出错。
展开