TreeMap构造函数

时间:2009-05-21 03:46:51

标签: java

我在使用TreeMap构造函数时遇到了一些问题。我有一个2 TreeMap<String, Client>的课程。按名称排序的树和按编号排序的另一个树。(客户端类:字符串名称,int号,...)

private TreeMap<String, Client> nameTree;
private TreeMap<Integer, Client> numberTree;

如何为此类构建构造函数?到目前为止我写了这个:

public ManagerTreeMap(){
        nameTree = new TreeMap<String, Client>(new StringComparator()); 
        numberTree  = new TreeMap<Integer, Client>(new IntegerComparator()); 
    }

我的主要问题是construtor“TreeMap(Comparator c)”。我可以写两个比较器吗?如果不是我该怎么办?

    public ManagerTreeMap(Comparator<String> cp){
       nameTree = new TreeMap<String, Client>(cp);          
    }

    public ManagerTreeMap(Comparator<Integer> cpt){
       nameTree = new TreeMap<Integer, Client>(cpt); 
    }

2 个答案:

答案 0 :(得分:3)

您似乎不需要自定义比较器。

public ManagerTreeMap(){
    nameTree = new TreeMap<String, Client>(); 
    numberTree  = new TreeMap<Integer, Client>(); 
}

答案 1 :(得分:2)

也许

public ManagerTreeMap(Comparator<String> cs, Comparator<Integer> ci){
   nameTree = new TreeMap<String, Client>(cs);          
   numberTree  = new TreeMap<Integer, Client>(ci); 
}