当前位置: 首页 > 知识库问答 >
问题:

线程“main”java中出现异常。util。Java中的输入不匹配异常

太叔鹏云
2023-03-14

当我尝试在错误代码下面运行但得到错误时,我也使用了“givenArray[i]=sc.next();或givenArray[i]=sc.nextLine();”但仍然失败。我尝试了许多不同的方法,但仍然得到相同的错误。似乎扫描仪无法读取数组我需要此代码的帮助,请提前谢谢。

提供的输入:输入第一个数组的长度:4并单击Enter,
输入第二个数组的长度:4并单击Enter,
输入第一个数组:2,3,4,5并单击Enter,然后抛出以下错误。

 private static boolean firstAndLastTwoArray(int[] firstArray, int[] secondArry){



        int  firsIndexOFirstArray = firstArray[0];
        int lastIndexOfSecondArray = secondArry[secondArry.length -1];


        if (firsIndexOFirstArray == lastIndexOfSecondArray) {

            return true;

        }else {
            return false;
        }

    }

    public static void main(String[] args) {


        Scanner sc = new Scanner(System.in);

        System.out.println("Enter  length of first Array: ");
        int firstArray = sc.nextInt();
        int[] givenArray = new int[firstArray];


        System.out.println("Enter length of second Array: ");
        int secondArray = sc.nextInt();
        int[] givenArray1 = new int[secondArray];



        for (int i = 0; i <firstArray; i++) {

            System.out.println("Enter First array:");
            givenArray[i] = sc.nextInt();


            for (int k = 0; k <secondArray; k++){

                System.out.println("Enter Second array:");
                givenArray1[k] = sc.nextInt();
            }
        }


        System.out.println("Result is: " + firstAndLastTwoArray(givenArray,givenArray1));
    }

错误:

Exception in thread "main" java.util.InputMismatchException
    at java.base/java.util.Scanner.throwFor(Scanner.java:939)
    at java.base/java.util.Scanner.next(Scanner.java:1594)
    at java.base/java.util.Scanner.nextInt(Scanner.java:2258)
    at java.base/java.util.Scanner.nextInt(Scanner.java:2212)
    at w3Resource.Exercise76.main(Exercise76.java:54)

共有1个答案

吕琪
2023-03-14

您应该逐个输入数组元素。输入时不要用逗号分隔。它将被视为字符串而不是int。

否则,删除for循环,并使用nextLine()将数组元素以逗号分隔,然后使用string根据','拆分输入字符串。split(“,”),返回一个数组。

 类似资料: