你如果改变treeSet中的对象,TreeSet肯定不会知道的
你只能自己重新排序
可以用java.util中Arrays或Collection类的sort方法
你只能自己重新排序
可以用java.util中Arrays或Collection类的sort方法
解决方案 »
- 【面试题】连接池的优点和缺点是什么,其基本原理是什么
- 怎么对文件进行加密解密,我的速度太低了,要好几秒.各位大侠帮帮忙,来者有分
- 问个比较弱的问题,关于webservice
- .class文件中不明白的问题 记录
- Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/log4j/Prio
- 请各个多多指点
- 请问如何在MySql内数据显示中文
- 用Java如何设置Unix的系统时间?
- SUN的JADE混淆器似乎很键壮
- 求教:如何辨别一个文件是可执行文件?
- 怎么设置菜单条的背景颜色呀?和窗口大小的控制问题!(在线等)一句代码10分
- 编译后带“$”的class文件是什么作用?
private static void reSort(TreeSet ts){
TreeSet tempTs= new TreeSet();
Iterator it = ts.iterator();
while(it.hasNext()){
Message mes = (Message)it.next();
tempTs.add(mes);
}
ts = tempTs;
}
java.util.Collections.sort(List,Comparator)
方法就能帮你排序List,第一个参数是你要排序的List,第二个参数是你的比较器,他告诉sort方法如何比较大小
java.util.Comparator是个接口,它的主要方法是
int compare(Object o1, Object o2)
Compares its two arguments for order.
你应该实现这个接口,将实例作为第二个参数传给sort方法sort还有另外一种形势
java.util.Collections.sort(List)
前提条件是List中的对象都实现了Comparable,比如里面都是String
java.lang
Interface Comparable
All Known Implementing Classes:
BigDecimal, BigInteger, Byte, ByteBuffer, Character, CharBuffer, Charset, CollationKey, Date, Double, DoubleBuffer, File, Float, FloatBuffer, IntBuffer, Integer, Long, LongBuffer, ObjectStreamField, Short, ShortBuffer, String, URI
java.util.Arrays的sort方法是一样的,不过它对数组排序