sort(List<T> list, Comparator<? super T> c) 根据比较器产生的顺序排序
来源:互联网 发布:反射 java 编辑:程序博客网 时间:2024/03/28 18:57
1.User实体类:
package com.book.model;public class User {private String name;private String age;public User(String name, String age) {this.name = name;this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getAge() {return age;}public void setAge(String age) {this.age = age;}}
2.ComparatorUser(自定比较器)
package com.company.lib.controllers;import java.util.Comparator;import com.book.model.User;public class ComparatorUser implements Comparator {@Overridepublic int compare(Object o1, Object o2) {User user0 = (User) o1;User user1 = (User) o2;// 首先比较age,其实比较姓名int flag = user0.getAge().compareTo(user0.getAge());if (flag == 0) {return user0.getName().compareTo(user0.getName());}else {return flag;}}}
3.测试类
package com.company.lib.controllers;import java.util.ArrayList;import java.util.Collections;import java.util.List;import com.book.model.User;public class SortTest {public static void main(String[] args) {List<User> userlist = new ArrayList<User>();userlist.add(new User("dd", "4"));userlist.add(new User("aa", "1"));userlist.add(new User("ee", "5"));userlist.add(new User("bb", "2"));userlist.add(new User("ff", "5"));userlist.add(new User("cc", "3"));userlist.add(new User("gg", "6"));ComparatorUser comparator = new ComparatorUser();Collections.sort(userlist, comparator);for (int i = 0; i < userlist.size(); i++) {User u = (User) userlist.get(i);System.out.println(u.getAge() + " , " + u.getName());}}}
4.结果:
4 , dd
1 , aa
5 , ee --age 5的 ee在前
2 , bb
5 , ff
3 , cc
6 , gg
0 0
- sort(List<T> list, Comparator<? super T> c) 根据比较器产生的顺序排序
- 剑指Offer——巧妙使用sort(List<T>,Comparator<? super T>)比较器
- 使用Collections.sort(List<T>,Comparator<? super T>)给List<String>排序(一)
- 使用Collections.sort(List<T>,Comparator<? super T>)给List<String>排序
- Collections.sort(List<T> list, Comparator<? super T> c) 源代码分析
- list的排序Comparator的compare(T lhs, T rhs)
- 使用Collections.sort(List<T>,Comparator<T>)给List<String>排序(一)
- 使用Collections.sort(List<T>,Comparator<T>)给List<String>排序(一)
- java Arrays.sort(T[] a, Comparator<? super T> c)调用一个已经封装好的排序规则进行排序
- public static <T extends Comparable<? super T>> void sort (List<T> list)的理解
- public static <T extends Comparable<? super T>> void sort (List<T> list)的理解
- C# List<T>.Sort排序
- List集合排序Sort(Comparison<T> comparison)
- C#中List<T>的排序用法(Sort)
- List<T> 根据某个字段排序
- java 根据 List<T> 的属性进行排序
- 建议采用的顺序是 List<T>、List<?>、List<Object>
- C# List<T>排序
- 调用系统相机
- Git详解之七 自定义Git
- ArcGIS for IOS 坐标系转换
- WebRTC技术
- Android Fragment注入漏洞
- sort(List<T> list, Comparator<? super T> c) 根据比较器产生的顺序排序
- pygame 方向键控制小球
- Lambda表达式
- arm的内存分配
- 在tomcat中部署webservice
- iframe笔记
- jquery---------ajax+validate表单异步提交验证
- hive分区(partition)简介
- Android中Parcelable和Serializable的区别