用户必须仅将数字(int、flot、double)输入ArrayList。如果用户输入数字以外的任何内容,则必须抛出异常InputMismatchException。
我想到了使用数字类。
Scanner input = new Scanner(System.in);
ArrayList<Number> number = new ArrayList<Number>();
System.out.println("Enter number");
(data_type???) number_var = input.??????;
number.add(number_var);
当询问用户是否要继续输入时,此代码将在do中。唯一的问题是如何限制用户仅以数字形式输入。这应该在不创建另一个类的情况下完成,但允许方法限制用户。
你可以接受所有的数字都是双打。Ints和floats可以适当地转换为双打:
Scanner input = new Scanner(System.in);
List<Double> number = new ArrayList<Double>();
System.out.println("Enter number");
number.add(input.nextDouble());
扫描仪的文档应该描述您需要的内容。您的扫描仪可以将输入读取为您想要的任何类型的数字。如果输入与您期望的不匹配,它将抛出InputMismatchException。