“TreeMap不接受参数”编译错误

时间:2015-05-12 09:31:29

标签: java compiler-errors treemap

这是我的代码:

import java.util.*;
public class TreeMap {
    public static void main(String[] args) {
        Map<String,Integer> treemap = new TreeMap<String,Integer>();
        Some code to fill the treemap ie treemap.put("Kevin", 36);
    }
}

我收到这个编译器错误:

TreeMap.java:5: error: type TreeMap does not take parameters
   Map<String,Integer> treemap = new TreeMap<String,Integer>();
                                            ^

3 个答案:

答案 0 :(得分:9)

public class TreeMap

重命名你的课程。它与java.util.TreeMap

发生冲突

编译器认为new TreeMap<String,Integer>()引用了您自己的类,它不带任何参数。

答案 1 :(得分:2)

使用Java TreeMap类的完全限定类名

new java.util.TreeMap<String,Integer>()

答案 2 :(得分:2)

为了澄清Eran的评论,导入java.util。*会导入java.util中的所有内容,其中包括java.util.TreeMap和一些您不使用的内容。这通常不是很好的编程实践,因为这意味着有更多的名称可能与您选择使用的名称冲突(就像上面发生的那样)。而不是将来导入java.util。*,请尝试仅导入您实际需要的对象。