根据ArrayList 中对象的属性排序,arraylist排序
分享于 点击 36211 次 点评:270
根据ArrayList 中对象的属性排序,arraylist排序
import java.util.ArrayList;import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class Sort {
static List<user> userl=new ArrayList<user>();
/**
* 根据年龄排行
*
* @return
*/
public List<user> getSortMonth(List<user> u) {
Comparator<user> comparator = new Comparator<user>() {
public int compare(user s1, user s2) {
//
return s1.getAge()- s2.getAge();
}
};
Collections.sort(u, comparator);
return u;
}
/**
* 根据sum值排行
*
* @return
*/
public List<user> getSortQuarter(List<user> u) {
Comparator<user> comparator = new Comparator<user>() {
public int compare(user s1, user s2) {
//
return s2.getSum() - s1.getSum();
}
};
Collections.sort(u, comparator);
return u;
}
public static void main(String[] args) {
List<user> u1=new ArrayList<user>();
List<user> u2=new ArrayList<user>();
user user=new user();
user.setAge(12);
user.setSum(32);
user.setUsername("hhhh");
user user2=new user();
user2.setAge(15);
user2.setSum(30);
user2.setUsername("wwwww");
user user3=new user();
user3.setAge(16);
user3.setSum(36);
user3.setUsername("wwwww");
//要想两种排序方式不受影响 对象就必须加入不同的list中(个人看法)
u1.add(user);u1.add(user2);
u1.add(user3);
u2.add(user);
u2.add(user2);
u2.add(user3);
Sort s=new Sort();
u1=s.getSortMonth(u1);
u2=s.getSortQuarter(u2);
for (int i = 0; i < u1.size(); i++) {
System.out.println(u1.get(i).getAge());
System.out.println(u1.get(i).getSum());
}
for (int i = 0; i < u2.size(); i++) {
System.out.println(u2.get(i).getAge());
System.out.println(u2.get(i).getSum());
}
}
}
-------------------------------------------------------
public class User {
private String username;
private int age;
private int sum;
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getSum() {
return sum;
}
public void setSum(int sum) {
this.sum = sum;
}
}
相关文章
- 暂无相关文章
用户点评