找不到符号Integer.valueOf(int)

时间:2017-07-22 03:25:26

标签: java intellij-idea

我有一个以前运作良好的旧项目,但我今天打开它,发现编译器告诉我'cannot find symbol Integer.valueOf(int)''cannot find symbol Integer.toHexString(int)'

java.lang.Integer似乎有问题。 我使用IntelliJ并且如上所述编译失败,但Eclipse工作正常。 此外,我使用相同的代码粘贴到一个新的IntelliJ项目,它也可以正常工作。

我的旧IntelliJ项目配置有什么问题吗?有人以前遇到过这个问题吗?

示例代码如下:

public class ContainerTest {
    public static void main(String[] args) {
        @SuppressWarnings("unchecked")
        List numbers = new ArrayList(Arrays.asList(1, 2, 3)); // cannot find Integer.valueOf(int) here
        ListIterator listIterator = numbers.listIterator();

        while (listIterator.hasNext()) {
            System.out.println("index" + listIterator.nextIndex() + " : " +listIterator.next());
            listIterator.add(100);
        }

        System.out.println(numbers);
    }
}

public class BinaryFileTest {
    public static void main(String[] args) throws IOException {
        DataInputStream reader = null;

        try {
            String filename = "./target/classes/io/TreeInfo.class";
            reader = new DataInputStream(new FileInputStream(new File(filename)));
            int i = 0, k;

            while (reader.available() != 0 && i++ < 4) {
                System.out.println(Integer.toHexString(k = reader.read())); // here
                System.out.println(k);
            }

            reader.close();

        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            reader.close();
        }
    }
}

1 个答案:

答案 0 :(得分:0)

当您使用不支持该方法的版本时,通常会修复此问题,请确保您在两个ide(eclipse和IntelliJ)中使用相同的版本。在IntelliJ中,您可以在Project Settings > Project中设置选择正确的Project SDK版本,与Project Settings > Modules选择项目的方式相同,点击Dependencies标签并选择正确的{{1}版本。