朋友们,我在TreeSet
收藏中遇到了问题。问题是我想在Comparator
的构造函数中使用Arrays.asList()
和TreeSet
方法。
void addDataFromArrays(){
Toy t1=new Toy();
t1.setId(123);
t1.setName("cubes");
Toy t2=new Toy();
t2.setId(321);
t2.setName("balls");
Toy t3=new Toy();
t3.setId(124);
t3.setName("teddys");
Toy arr[]={t1,t2,t3};
Set<Toy> set=new TreeSet<Toy>(new ToyComp(),Arrays.asList(sa)); // error in this line
}
如果我在Comparable
类中使用Toy
,则错误消失,从而从TreeSet
构造函数中删除了一个参数。但是,我仍然想使用Comparator
。
答案 0 :(得分:0)
嗯,你不能。但你可以这样做:
Set<Toy> set=new TreeSet<Toy>(new ToyComp());
set.addAll(Arrays.asList(sa));