java类中数据的输入

import java.util.*;
public class text {
String name;
int cj;
public static void main(String[] args){
Scanner input=new Scanner(System.in);
text[] a=new text[2];
a[0]=new text();
a[0].name=input.nextLine();
a[0].cj=input.nextInt();
a[1]=new text();
a[1].name=input.nextLine();
a[1].cj=input.nextInt();
System.out.println(a[0].name+" "+a[0].cj);

}
}
最后会输出
ss
55
ss
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.nextInt(Scanner.java:2117)
at java.util.Scanner.nextInt(Scanner.java:2076)
at text.main(text.java:13)

好像是输入的数据不符合。。怎么回事大佬们
好像是输入的数据不

nextInt 需要输入的必须是 整数,输入字符串之类的,会报错
如果你分不清楚,应该输入什么,可以加一句提示,提示输入类型什么的
比如:
a[0]=new text();
System.out.println("请输入name:");
a[0].name=input.nextLine();
System.out.println("请输入cj(数字):");
a[0].cj=input.nextInt();
a[1]=new text();
这样应该不至于弄乱

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-10-10
输入时,数据没有对应地输入,造成异常了

~~~~~~~
相似回答