我正在尝试编写一个简单的程序,用于在哈希映射中添加键值对并遍历它们。 代码是: -
import java.util.*;
public class MapExample{
public static void main(String[] args) {
Map<Integer,String> map=new HashMap<Integer,String>();
map.put(1,"Palla");
map.put(2,"Durga");
map.put(3,"Deepak");
for(Map.Entry entry:map.entrySet())
System.out.println("key is "+entry.getKey()+" "+"value is "+entry.getValue());
}
}
当我编译这个程序时,它会抛出这个错误: -
MapExample.java:7: error: type Map does not take parameters
Map<Integer,String> map=new HashMap<Integer,String>();
^
我通过修改
解决了这个问题import java.util.*;
as
import java.util.Map;
现在这个错误消失了,但它再次抛出以下错误: -
MapExample.java:7: error: cannot access HashMap
Map<Integer,String> map=new HashMap<Integer,String>();
^
bad source file: .\HashMap.java
file does not contain class HashMap
Please remove or make sure it appears in the correct subdirectory of the sourcepath.
我理解错误并添加了
import java.util.HashMap;
现在完整的程序运行正常,我感觉很可疑 为什么
不能正常工作import java.util.*;
除非我们需要明确声明导入语句Map和HashMap。
修正:
MapExample.java:7: error: cannot access HashMap
Map<Integer,String> map=new HashMap<Integer,String>();
^
bad source file: .\HashMap.java
file does not contain class HashMap
Please remove or make sure it appears in the correct subdirectory of the sourcepath.
删除当前工作目录中的HashMap.java
后,此错误得到修复。
但是这个错误
MapExample.java:7: error: type Map does not take parameters
Map<Integer,String> map=new HashMap<Integer,String>();
^
保持不变。
通过删除当前工作目录中的Map.java
,修复了上述错误。所有错误都得到修复。