无法将java扫描程序转换为int
由于某种原因,我得到了一个错误,扫描仪无法转换为int,即使我使用的是nextInt。为什么呢?这里完全没有问题
System.out.println("How many numbers does your array contains?") ;
Scanner num= new Scanner(System.in);
Scanner mis=new Scanner(System.in);
System.out.println(num.nextInt());
int maara[]=new int[num];
for(int counter=0; counter<maara.length; counter++){
System.out.println("enter num");
System.out.println(mis.nextInt());
maara[counter]=mis ;
我搜索了很多,但问题总是人们使用nextLine,这里我要说明的是,输入将是一个整数,它仍然不会运行。 这只是代码的一部分,但我经常遇到这个错误。我已经导入了扫描仪。 提前非常感谢
附言-我正在ubuntu 17.10上使用netbeans。我不知道这是否重要
# 1 楼答案
在这一行
maara[counter]=mis;
上,您试图将mis
(theScanner
)放入int
数组中您需要保存
nextInt()
的结果并将其放入# 2 楼答案
Scanner
不是int
。如果你以正确的方式提问,它会给你int
它就像一家超市:它会卖给你牛奶,但它本身不是牛奶。你必须从超市买牛奶
您需要将
int
类型的内容分配给数组元素:但是请注意,您不想这样做,因为您将得到与前一行中打印的不同的
int
(可能),因为您需要从扫描仪中获取两个值。相反,请执行以下操作:# 3 楼答案
错误和往常一样。将最后两条语句替换为