Java:在Map,HashMap上找不到符号错误

时间:2011-10-23 01:15:36

标签: java missing-symbols

我正在尝试运行此代码:

import java.util.*;

public class ScanReg {
  public Map<Integer, ArrayList<Long>> scanMap = new HashMap<Integer, ArrayList<Long>>();
}

在这个课程中:

import java.util.*;

public class NxtStart {
  ScanReg sr = new ScanReg();
}

这不断给我以下错误:

.\ScanReg.java:6: error: cannot find symbol
        public Map<Integer, ArrayList<Long>> scanMap = new HashMap<Integer, Arra
yList<Long>>();
               ^
  symbol:   class Map
  location: class ScanReg
.\ScanReg.java:6: error: cannot find symbol
        public Map<Integer, ArrayList<Long>> scanMap = new HashMap<Integer, Arra
yList<Long>>();
                                                           ^
  symbol:   class HashMap
  location: class ScanReg
2 errors

有人可以告诉我为什么吗?

2 个答案:

答案 0 :(得分:1)

您可能正在使用Java 1.4编译并使用泛型(仅从1.5开始提供)。

答案 1 :(得分:-1)

您需要将内部类声明为静态

public static class ScanReg {}

否则,放入不同的Java文件并导入ScanReg。