List排序 排序方法一(直接排序) List<String> names=new ArrayList<String>(); List<Integer> ages=new ArrayList<Integer>(); Collections.sort(names); Collections.sort(ages); 排序方法二 实现Comparable接口 该方法缺点就是只能对单一属性添加进行排序,而且写死在User类中 public class User implements Comparable<User> public int compareTo(User user) { //return this.getName().compareTo(user.getName()); //升序 return user.getName().compareTo(this.getName()); //降序 } Collections.sort(users); 排序方法三 使用比较器来进行排序,优点可以自己定义排序规则,可以对多属性进行排序 创建比较器类 public class UserComparator implements Comparator<User> { /** * 比较器方法 * 先按年龄排序从小到大,如果年龄一样的话按id排序 */ @Override public int compare(User o1, User o2) { if(o1.getAge()>o2.getAge()) return 1; else if(o1.getAge()==o2.getAge()){ if(o1.getId()>o2.getId()) return 1; else if(o1.getId()==o2.getAge()) return 0; else return -1; } else return -1; } } //创建比较器对象 UserComparator comp=new UserComparator(); //调用排序方法 Collections.sort(users,comp);
List集合元素几种排序方法总结
猜你喜欢
转载自blog.csdn.net/caisongcheng_good/article/details/79468825
今日推荐
周排行