因此,我设置了基础知识。我们需要创建一个由用户指定大小的数组。制作完数组后,用户必须用整数值填充数组。然后,该程序应按照链接图像中2号的规定执行算术运算。我又创建了两个数组,一个保留用于求和的答案,另一个保留用于除法的答案。现在的问题是,当您需要对数组中的最后一个数字进行加法或除法运算时,我会得到一个IndexOutOfBoundsException,因为在最后一个加或除之后没有值。他们将其设置为使其能够通过异常,因为本实验全部涉及异常并创建自定义异常。但是我需要两个例外的帮助。如果用户在数组中输入非整数值,则第一个例外。第二个是IndexOutOfBoundsException异常。我不知道该怎么做。我将代码添加到下方
import java.util.Scanner;
import java.util.Arrays;
public class Driver {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int arrSize = 0;
int num = 0;
System.out.println("Enter array size");
arrSize = input.nextInt();
int[] numbers = new int[arrSize];
int[] sum = new int[arrSize];
int[] divide = new int[arrSize];
for (int i = 0; i < numbers.length; i++) {
System.out.println("Enter number");
num = input.nextInt();
numbers[i] = num;
}
for (int q = 0; q < numbers.length; q++) {
sum[q] = numbers[q] + numbers[q+1];
divide[q] = numbers[q] / numbers[q+1];
}
System.out.println(Arrays.toString(sum));
System.out.println(Arrays.toString(divide));
}
}
答案 0 :(得分:1)
这应该可以帮助您扫描整数值。
try{
System.out.print("Enter an integer: ");
int number = input.nextInt();
}
catch (InputMismatchException ex) {
System.out.println("Incorrect input: an integer is required)");
//It's also possible to throw your custom Exception here, like "throw new CustomException();"
}
关于IndexOutOfBoundsException,只需在您希望该异常发生的地方周围写一个try catch块,然后抛出您自己的自定义异常即可。
try{
...
}catch(IndexOutOfBoundsException e){
throw CustomException2();
}