不兼容的类型:int不能转换为整数

时间:2019-01-15 21:56:51

标签: java autoboxing

int应该自动装箱,但我不知道为什么不是这样。当我尝试编译时,它给了我一个不兼容的类型错误。我的代码有问题吗?

Scanner console = new Scanner(System.in);
    ArrayList<Integer> list = new ArrayList<>();
    int first = console.nextInt();
    while (first!=0) {
        first=console.nextInt();
        list.add(first);
    }
    System.out.println("Your first list: " + list);
}

2 个答案:

答案 0 :(得分:-1)

您可能不正确地导入了库。你应该有这样的东西:

import java.util.ArrayList;
import java.util.Scanner;

答案 1 :(得分:-2)

  • 尝试使用5以后的Java或最新版本的Java(当前为JDK11)。
  • 确保您的输入始终为整数。否则,您将面对“ InputMismatchException”。
    • 您的代码预期会得到一个整数,因此,如果您输入一些字符串,您的代码将无法再使用
  • 确保已从正确的库中导入。

    import java.util.ArrayList;
    import java.util.Scanner;
    
  • 确保您的语言设置级别为5.0或更高。您应该在IDE设置中检查设置。