本文实例讲述了java实现List中对象排序的方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
|
package com.test;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class NewsManager {
/**
* @param args
*/
public static void main(String[] args) {
List newss=getNewsList();
for ( int i= 0 ;i<newss.size();i++)
{
News news=(News)newss.get(i);
System.out.println( "id:" +news.getId());
System.out.println( "title:" +news.getTitle());
System.out.println( "hits:" +news.getHits());
}
}
public static List getNewsList()
{
List list= new ArrayList();
News news1= new News();
news1.setHits( 1 );
news1.setId( 1 );
news1.setTitle( "test1" );
list.add(news1);
News news2= new News();
news2.setHits( 7 );
news2.setId( 2 );
news2.setTitle( "test2" );
list.add(news2);
News news3= new News();
news3.setHits( 3 );
news3.setId( 3 );
news3.setTitle( "test3" );
list.add(news3);
News news4= new News();
news4.setHits( 5 );
news4.setId( 4 );
news4.setTitle( "test4" );
list.add(news4);
// 按点击数倒序
Collections.sort(list, new Comparator<News>() {
public int compare(News arg0, News arg1) {
int hits0 = arg0.getHits();
int hits1 = arg1.getHits();
if (hits1 > hits0) {
return 1 ;
} else if (hits1 == hits0) {
return 0 ;
} else {
return - 1 ;
}
}
});
return list;
}
}
|
希望本文所述对大家Java程序设计有所帮助。