import java.util.ArrayList;
import java.util.Scanner;
public class Arraylist1 {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
ArrayList<Double> inputs = new ArrayList<Double>();
System.out.println("Please enter your number: ");
while (in.hasNext()) {
inputs.add(in.nextDouble());
}
System.out.println(inputs);
}
}
当我输入1 2 3 4 5 q
输入时,我收到的错误为:
请输入您的电话号码: 1 2 3 4 5 q 线程“main”java.util.InputMismatchException中的异常 at java.util.Scanner.throwFor(Scanner.java:909) 在java.util.Scanner.next(Scanner.java:1530) at java.util.Scanner.nextDouble(Scanner.java:2456) 在Arraylist1.main(Arraylist1.java:13)
为什么我得到这个错误,因为我看到一切都被正确编码,其他一些数据(在本例中为q)被添加为输入以终止arraylist循环,仍然得到错误
答案 0 :(得分:0)
您应该使用hasNextDouble()
代替hasNext()
进行while循环。