您的位置:首页 > 编程语言 > Java开发

java集合对象属性排序

2018-01-15 21:53 459 查看
package com.zr.List;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

/**
* 集合对象属性排序
*
* @author 如
*/
public class SortList {

public static void main(String[] args) {

List<User> userList = new ArrayList<User>();

userList.add(new User("李小龙", "男", 74));
userList.add(new User("李连杰", "男", 54));
userList.add(new User("刘亦菲", "女", 29));
userList.add(new User("杨紫琼", "女", 51));

System.out.println("排序前:" + userList);

Collections.sort(userList, new Comparator<User>() {
/*
* int compare(User o1, Student o2) 返回一个基本类型的整型
* 返回负数表示:o1 小于o2,
* 返回0 表示:o1和o2相等,
* 返回正数表示:o1大于o2。
*/
public int compare(User u1, User u2) {
// 按照年龄进行升序排列
if (u1.getAge() > u2.getAge()) {
return 1;
}
if (u1.getAge() == u2.getAge()) {
return 0;
}
return -1;
}
});
System.out.println("排序后(升序):" + userList);
Collections.reverse(userList);
System.out.println("降序:"+userList);

}

}
   
package com.zr.List;

public class User {

private String username;

private String gender;

private int age;

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public String getGender() {
return gender;
}

public void setGender(String gender) {
this.gender = gender;
}

public int getAge() {
return age;
}

public void setAge(int age) {
this.age = age;
}

@Override
public String toString() {
return "User [username=" + username + ", gender=" + gender + ", age=" + age
+ "]";
}

public User(String username, String gender, int age) {
super();
this.username = username;
this.gender = gender;
this.age = age;
}

public User() {
super();
// TODO Auto-generated constructor stub
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: