用Collections.sort方法对list排序有两种方法
测试一下:
第一种是list中的对象实现Comparable接口,如下:
01 |
/** |
02 |
*
根据order对User排序 |
03 |
*/ |
04 |
public class User implements Comparable |
05 |
|
{ |
15 |
private String
name; |
16 |
private Integer
order; |
17 |
public String
getName() { |
18 |
return name; |
19 |
} |
20 |
public void setName(String
name) { |
21 |
this .name
= name; |
22 |
} |
23 |
public Integer
getOrder() { |
24 |
return order; |
25 |
} |
26 |
public void setOrder(Integer
order) { |
27 |
this .order
= order; |
28 |
} |
29 |
public int compareTo(User
arg0) { |
30 |
return this .getOrder().compareTo(arg0.getOrder()); |
31 |
} |
32 |
} |
33 |
List
list
=
new
ArrayList<User>();
User
user1 =
new
User();
User
user2 =
new
User();
list.add(user1);
list.add(user2);
Collections.sort(list);
第二种方法是根据Collections.sort重载方法来实现,例如:
01 | Collections.sort(list,new Comparator <user>(){ |
02 | public int compare(User arg0, User arg1) { |
03 | return arg0.getOrder().compareTo(arg1.getOrder()); |
04 | } |
05 |
}); |
|