你如果改变treeSet中的对象,TreeSet肯定不会知道的
你只能自己重新排序
可以用java.util中Arrays或Collection类的sort方法
你只能自己重新排序
可以用java.util中Arrays或Collection类的sort方法
解决方案 »
- 指点一下,运行结果提示:Exception in thread "main" java.lang.NoSuchMethodError: main
- 为什么你们都喜欢用i++不用++i
- java 多少年才算是资深
- cal.after() 这个方法返回的是什么
- socket中传输图片的问题
- 用log4j将不同级别的信息,在不同的地方显示
- 如何在程序中判断java服务器的类型?
- jni中调用了MFC,我该如何...?
- 请问大家看完think in java用多少时间呀?
- StringBuffer传的不是引用吗?
- 怎么设置菜单条的背景颜色呀?和窗口大小的控制问题!(在线等)一句代码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方法是一样的,不过它对数组排序