如题,我之前听说ArrayList用的比TreeSet会多些(接触Collections后相信了,O(∩_∩)O~)。
疑惑是: 一个TreeSet集合如何调用多个比较器?
ArrayList可以通过多次调用Collections.sort( )实现不同的排序功能,但TreeSet的排序是在new TreeSet对象的时候就指定了,好像不好改。(下面只是之前错误了的思路,可忽略)
之前我想过定个无比较器的TreeSet,然后把它赋值给其他TreeSet集合(至少实现数据共享),但是...(没但是,怎么加,不可能吧,O(∩_∩)O~);
还想了定个参数(该参数定义在TreeSet存储比较器的位置),然后通过赋值给参数,改变TreeSet的比较器,不过编译不通过。
这可能类似反射吧,暂时没学到反射(稍微懂原理,但不知道代码怎么写),也不知道是不是自己定义参数时有问题所以没成功。
最后希望大神们帮忙指教下,谢谢,说说能不能实现,大概怎么实现,O(∩_∩)O谢谢。
|