【问题标题】:Facing some problems with InputMismatchException in java在 java 中遇到 InputMismatchException 的一些问题
【发布时间】:2020-01-07 18:19:44
【问题描述】:

在我的代码中,我有两个 String 类型的 ArrayList arrarr2arr ArrayList 用于存储行对,这里的 int t 是用户在 arr 中输入的对数。 第二个ArrayList arr2用于存储单行,整数t2是用户在arr2中存储的单行数。之后我只需打印 arrarr2

import java.util.Scanner;

class Main{
    public static void main(String[] args){
        Scanner sc = new Scanner(System.in);

        ArrayList<String> arr = new ArrayList<>();
        ArrayList<String> arr2 = new ArrayList<>();
        int t;
        t = sc.nextInt();

        sc.nextLine();

        for(int i=0;i<t;i++){
            String first,second;
            first = sc.nextLine();
            second = sc.nextLine();

            arr.add(first);
            arr.add(second);
        }

         sc.nextInt();
        int t2;
        t2 = sc.nextInt();

        sc.nextLine();

        for(int i=0;i<t2;i++){
            String input;
            input = sc.nextLine();
            arr2.add(input);
        }

        for(String val: arr){
            System.out.println(val);
        }
          System.out.println();
        for(String val: arr2){
            System.out.println(val);
        }

    }
}

但在输入所有输入后,我得到 线程“main”java.util.InputMismatchException 中的异常

Sample Input-

3
ko te kader molla
tui rajakar tui rajakar
tumi ke ami ke
garo chakma bangali
jalo re jalo
agun jalo

2

jalo re jalo
ko te kader molla



Sample Output-

ko te kader molla
tui rajakar tui rajakar
tumi ke ami ke
garo chakma bangali
jalo re jalo
agun jalo

jalo re jalo
ko te kader molla


【问题讨论】:

  • 考虑使用有意义的变量名。某人(或您自己)关注pairsOfLines 比关注arr2 容易得多。

标签: java


【解决方案1】:

在第一个 for-loop 之后,您正在阅读 2 次 sc.nextInt();。在这些行中:

sc.nextInt();
int t2;
t2 = sc.nextInt();

我相信您的错误来自那里,因为下一个值是 int(在您的示例输入中为 3),但随后您尝试读取另一个 int,但您提供的是 String

如果这不是问题,请发布完整的堆栈跟踪。

【讨论】:

    猜你喜欢
    • 2020-04-29
    • 2017-09-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-24
    • 2013-04-18
    • 2022-11-17
    相关资源
    最近更新 更多