Java中如何对集合排序
ArrayList<User>.按照User中的userId排序该怎么排呢?虚心请教各位高手.方式越多越好....
ArrayList<User>. 按照User中的userId排序该怎么排呢?
虚心请教各位高手.方式越多越好. 展开
虚心请教各位高手.方式越多越好. 展开
2个回答
展开全部
java中对集合排序,可以使用Collections.sort来进行排序,可以对中文、字母、数字进行排序,当比较的是对象时候,让该类实现comparable接口,示例如下:
Collections.sort(dataMap, new Comparator<Map<String, Object>>() {
//排序接口实现方法
@Override
public int compare(Map<String, Object> lhs, Map<String, Object> rhs) {
switch (whichsort) {
case System_OpenPosition_Sort_Currency:
String d2 = ((String) rhs.get(Instrument));
String d1 = (String) lhs.get(Instrument);
if (d2 != null && d1 != null) {
int flag = d1.compareTo(d2);
if (flag == 0) {
Double d3 = ((Double) rhs.get(OpenPrice));
Double d4 = (Double) lhs.get(OpenPrice);
if (d3 != null && d4 != null) {
int flag2 = d4.compareTo(d3);
if (flag2 == 0) {
String d5 = ((String) rhs.get(BuySell));
String d6 = (String) lhs.get(BuySell);//文字排序
if (d5 != null && d6 != null) {
return d6.compareTo(d5);//返回一个int类型,用来判断是否大于、小于还是等于
}
}
return d4.compareTo(d3);
}
} else {
return flag;
}
// return d1.compareTo(d2);
}
展开全部
Java内建的排序(冒泡):Java集合有两个实现的工具类,Collections和Arrays。Collections针对集合类型。Arrays针对数组。只需要一个为你排序需要的定制的Comparator或Comparable的实现,将其作为参数传给Collections或Arrays的sort方法就行。
可以自己用程序去实现这个排序。用for从原List里面一个一个拿出来比较然后一个新建的List里面去。
楼主看一下参考资料。
可以自己用程序去实现这个排序。用for从原List里面一个一个拿出来比较然后一个新建的List里面去。
楼主看一下参考资料。
参考资料: http://www.javaeye.com/topic/503812
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询