List集合中的对象按照某个字段去重实现
2017-08-13 20:32
330 查看
总感觉自己太菜,还在基础上摸爬滚打。
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
效果:
package com.huixin; import java.util.*; /** * 根据对象属性字段给list集合去重 * * @author Lance * @date 2017/03/14 */ public class ListQC { public static void main(String[] args) { List<User> userList = new ArrayList<User>(); User user1 = new User("张三", "001"); userList.add(user1); User user2 = new User("李四", "001"); userList.add(user2); User user3 = new User("王五", "002"); userList.add(user3); for (User u : userList) { System.out.println(u.getName()); } System.out.println("去重后=======>"); List<User> userListNoDupAndSort = removeDuplicateUser(userList); for (User u : userListNoDupAndSort) { System.out.println(u.getName()); } } private static Arr 4000 ayList<User> removeDuplicateUser(List<User> users) { Set<User> set = new TreeSet<User>(new Comparator<User>() { @Override public int compare(User o1, User o2) { //字符串,则按照asicc码升序排列 return o1.getUserId().compareTo(o2.getUserId()); } }); set.addAll(users); return new ArrayList<User>(set); } } class User { private String name; private String userId; public User(String name, String userId) { this.name = name; this.userId = userId; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getUserId() { return userId; } public void setUserId(String userId) { this.userId = userId; } }1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
效果:
张三 李四 王五 去重后=======> 张三 王五
相关文章推荐
- List集合中的对象按照某个字段去重实现
- List集合中的对象按照某个字段去重实现
- List集合中的对象按照某个字段去重实现
- List集合根据存储对象的属性字段排序实现
- List对象去重和按照某个字段排序的实现方法
- 对list集合中的对象按照字段属性排序
- java list按照元素对象的指定多个字段属性进行排序
- Java按照List内存储的对象的某个字段进行排序的实例
- java list按照 对象 指定多个字段属性进行排序
- java list按照元素对象的指定多个字段属性进行排序
- jave 对List 数组中的对象按照多个字段排序
- Java中集合List按照集合内实体类元素的指定字段排序方法
- Android List(集合)中的对象以某一个字段排序
- list集合实现按某字段筛选去重
- Java:集合,对列表(List)中的自定义对象按属性(字段)排序(正序、倒序)的方法
- List<Object>集合按照Object的某个字段排序,解决取不到父类字段问题
- java list按照元素对象的指定多个字段属性进行排序
- List集合对象中按照不同属性大小排序
- 将一个对象集合按照对象的某个字段排序
- List集合对象中按照不同属性大小排序的实例