码迷,mamicode.com
首页 > 其他好文 > 详细

Collections.sort()的使用

时间:2015-04-01 13:30:13      阅读:120      评论:0      收藏:0      [点我收藏+]

标签:collections.sort comparable   comparator

1.实现Comparable接口(如果List<Object>中Object实现了Comparator接口,便可以直接用以下Collections.sort的方式对List进行排序)

public class Test {

 public static void main(String[] args) {
  List<User> userList = new ArrayList<User>();
  userList.add(new User(3, "3"));
  userList.add(new User(2, "2"));
  userList.add(new User(5, "5"));
  userList.add(new User(7, "7"));
  Collections.sort(userList);
  for (User user : userList) {
   System.out.println(user.getAge());
  }
 }
}

class User implements Comparable<User> {
 private int age;
 private String name;

 public User(int age, String name) {
  super();
  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 int compareTo(User user) {

  return age - user.getAge();
 }
}

2.实现Comparator接口

public class Test {

 public static void main(String[] args) {
  List<User> userList = new ArrayList<User>();
  userList.add(new User(3, "3"));
  userList.add(new User(2, "2"));
  userList.add(new User(5, "5"));
  userList.add(new User(7, "7"));
  Collections.sort(userList,new CompareUser());
  for (User user : userList) {
   System.out.println(user.getAge());
  }
 }
}

class CompareUser implements Comparator<Object>{

 @Override
 public int compare(Object arg0, Object arg1) {
  User user1=(User)arg0;
  User user2=(User)arg1;
  return user1.getName().toLowerCase().compareTo(user2.getName().toLowerCase());
 }
 
}

class User   {
 private int age;
 private String name;

 public User(int age, String name) {
  super();
  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;
 }

}

Collections.sort()的使用

标签:collections.sort comparable   comparator

原文地址:http://5618698.blog.51cto.com/5608698/1627229

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!