激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|JavaScript|易語言|

服務器之家 - 編程語言 - Java教程 - 詳解JAVA使用Comparator接口實現自定義排序

詳解JAVA使用Comparator接口實現自定義排序

2021-07-22 16:22孟陽miss Java教程

這篇文章主要介紹了JAVA使用Comparator接口實現自定義排序,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧

1、原則

comparator接口可以實現自定義排序,實現comparator接口時,要重寫compare方法:
int compare(object o1, object o2) 返回一個基本類型的整型
如果要按照升序排序,則o1 小于o2,返回-1(負數),相等返回0,01大于02返回1(正數)
如果要按照降序排序,則o1 小于o2,返回1(正數),相等返回0,01大于02返回-1(負數)

?
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
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
import java.util.arraylist;
import java.util.comparator;
import java.util.list;
 
public class usercomparator implements comparator < user > {
 
public static void main( string[] args ) {
list < user > users = new arraylist < user >();
users.add( new user( 10, "a" ) );
users.add( new user( 11, "d" ) );
users.add( new user( 15, "s" ) );
users.add( new user( 6, "x" ) );
users.add( new user( 17, "a" ) );
users.add( new user( 17, "b" ) );
users.add( new user( 17, "c" ) );
users.add( new user( 17, "d" ) );
usercomparator comparator = new usercomparator();
 
users.sort( comparator );
// 也可以使用:collections.sort( users, comparator );
 
for ( user u : users ) {
system.out.println( u );
}
}
 
@override
public int compare( user u1, user u2 ) {
if ( u1.equals( u2 ) ) {
return 0;
}
else if ( u1.getage() < u2.getage() ) {
return 1;
}
else if ( u1.getage() == u2.getage() ) {
int f = u1.getname().compareto( u2.getname() );
if ( f < 0 ) {
 return -1;
}
return 0;
}
else {
return -1;
}
}
}
 
class user {
private int age;
private string name;
 
public user() {
 
}
 
public user( int age, string name ) {
this.age = age;
this.name = name;
}
 
public int getage() {
return age;
}
 
public void setage( int age ) {
this.age = age;
}
 
public string getname() {
return name;
}
 
public void setname( string name ) {
this.name = name;
}
 
@override
public string tostring() {
return "user [age=" + age + ", name=" + name + "]";
}
 
}
?
1
2
3
4
5
6
7
8
user [age=17, name=a]
user [age=17, name=b]
user [age=17, name=c]
user [age=17, name=d]
user [age=15, name=s]
user [age=11, name=d]
user [age=10, name=a]
user [age=6, name=x]

以上所述是小編給大家介紹的java使用comparator接口實現自定義排序詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!

原文鏈接:https://www.cnblogs.com/mengzj233/p/9816289.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久久亚洲成人网 | 国产精品视频二区不卡 | 爽爽视频免费看 | 日夜操天天干 | 视频一区二区三区在线播放 | 国产精品久久久久久久不卡 | 国产精品69久久 | 久久久久久久久久亚洲精品 | 全黄裸片武则天一级第4季 九色p | 欧美a在线观看 | 久久久久久久亚洲视频 | 一级影片在线观看 | 亚洲欧美在线视频免费 | 欧美爱爱视频网站 | 国产成人精品免费视频大全办公室 | 久久国产成人精品国产成人亚洲 | 久久久一区二区三区精品 | 亚洲成人福利网站 | 色综合网在线观看 | 九九视频久久 | 黄色网址在线免费播放 | 免费一级a毛片在线播放视 日日草夜夜操 | 成人影片在线免费观看 | 久久国产精品久久久久久久久久 | 久草在线视频网 | 成人一区三区 | 日韩欧美激情视频 | 性看小视频 | 中文字幕h | 日韩欧美激情视频 | 一级黄色大片在线观看 | www.com黄| 露脸各种姿势啪啪的清纯美女 | 韩国三级日本三级香港三级黄 | 久久久99精品视频 | 狠狠色噜噜狠狠狠米奇9999 | 免费一级特黄毛片视频 | 一区二区三区国产好的精 | 7777欧美| 久久久av亚洲男天堂 | 国产精品免费一区二区三区都可以 |