关于使用Comparator对集合进行强制排序.
来源:互联网 发布:淘宝打假套话 编辑:程序博客网 时间:2024/05/18 05:03
Collections.sort(selectRole, new Comparator<Object>(){//按编号升序。
@Override
public int compare(Object o1, Object o2) {
TsysParameter p1 = (TsysParameter)o1;
TsysParameter p2 = (TsysParameter)o2;
return p1.getParano().compareTo(p2.getParano());//调用String的compareTo();方法进行对比
}});
另提供SortList对集合排序的公共方法:
@SuppressWarnings("unchecked")
public void sortList(List list, final String method, final String sort) {
final String name = "get" + method.substring(0, 1).toUpperCase()
+ method.substring(1);
Collections.sort(list, new Comparator() {
public int compare(Object a, Object b) {
int i = 0;
try {
Method m1 = ((E) a).getClass().getMethod(name, null);
Method m2 = ((E) b).getClass().getMethod(name, null);
Object o1 = m1.invoke(((E) a), null);
Object o2 = m2.invoke(((E) b), null);
i = compareTo(o1.getClass(), o1, o2);
} catch (Exception e) {
System.err.println(e.getMessage());
}
return i;
}
});
}
public int compareTo(Class c, Object a, Object b) {
if (c == Integer.class) {
return ((Integer) a).compareTo((Integer) b);
} else if (c == Long.class) {
return ((Long) a).compareTo((Long) b);
} else if (c == Double.class) {
return ((Double) a).compareTo((Double) b);
} else if (c == Short.class) {
return ((Short) a).compareTo((Short) b);
} else if (c == Float.class) {
return ((Float) a).compareTo((Float) b);
} else {
return (a.toString().compareTo(b.toString()));
}
}
- 关于使用Comparator对集合进行强制排序.
- 使用Comparator对ArrayList进行排序
- 使用Comparator接口对List进行排序
- Comparator 集合中对内部对象进行排序
- 通过Comparator和Comparable对集合进行排序
- java对list集合使用comparator方法比较排序
- 使用Comparator对List排序
- java中对集合或数组进行排序有两种方法:Comparable 与 Comparator
- 使用Collections.sort对集合进行排序。
- 用Comparator对List<Map>进行排序
- 对集合进行排序
- 对集合进行排序
- 对集合进行排序
- 对集合进行排序
- 对集合进行排序
- java list集合使用Collections中的sort方法进行排序(Comparator),超实用
- 使用comparator进行数组的排序
- 使用comparator 将对象数组进行排序
- Axis2开发环境的搭建
- 生成swc库文件若干方法
- DateTime 24时制
- mysql中insert into和replace into以及insert ignore用法区别
- ArrayList Vector LinkedList 区别与用法
- 关于使用Comparator对集合进行强制排序.
- C 语言的运算符介绍
- ACCESS 联表更新字段
- PHP中的mb_convert_encoding与iconv函数介绍
- C++ primer中关于new和delete工作的描述
- 让TortoiseSVN 自动添加keyword
- KMP字符串模式匹配详解[转]
- 判断Access里是否存在表
- C 语言中的数据结构介绍