针对基础类型:
ArrayList<String> result = new ArrayList<String>();
for(String s: sources){
if(Collections.frequency(reslut, s) < 1) result.add(s);
}
LinkedHashSet<String> set = new LinkedHashSet<String>(rules);
ArrayList<String> newRules = new ArrayList<String>(set);
针对对象类型:
去除ArrayList<Object>里面的重复记录
http://www.cnblogs.com/jizha/p/java_arraylist_duplicate.html
/**
* 将列表中重复的用户移除,重复指的是userid相同
* @param userList
* @return
*/
public ArrayList<UserInfo> removeDuplicteUsers(ArrayList<UserInfo> userList){
Set<UserInfo> s= new TreeSet<UserInfo>(new Comparator<UserInfo>(){
@Override
public int compare(UserInfo o1, UserInfo o2) {
return o1.userId.compareTo(o2.userId);
}
});
s.addAll(userList);
return new ArrayList<UserInfo>(s);
}
分享到:
相关推荐
ArrayList<Integer> list = new ArrayList<>(); list.add(1); list.add(2); list.add(2); list.add(3); list.add(4); list.add(4); list.add(5); System.out.println("去重后的列表: " + removeDuplicates...
List<Student> list = new ArrayList<>(); // 添加元素到list Set<Student> set = new HashSet<>(list); list.clear(); list.addAll(set); ``` 3. 使用Java 8的Stream API去重 Java 8中引入了Stream API,可以使用...
List<String> newList = new ArrayList<>(new HashSet<>(list)); System.out.println("去重后的集合:" + newList); } ``` #### 2. 使用Stream API的distinct() Stream API提供了一个方便的`distinct()`方法,...
List<PenBean> uniquePenBeanList = new ArrayList<>(SetUtils.difference(new HashSet<>(penBeanList), new HashSet<>())); ``` 三、性能对比 在不同的去重方法中,性能可能会有所不同。通常,Set的实现(如...
List<MyObject> list = new ArrayList<>(); // 添加元素... Set<MyObject> set = new HashSet<>(list.size(), 1f); list.forEach(obj -> set.add(obj)); list.clear(); list.addAll(set); ``` 在提供的文件`...
Collectors.toCollection(() -> new TreeSet<>(Comparator.comparing(t -> t.getName()))), ArrayList::new )); ``` **方法二:使用自定义的distinctByKey方法去重** Java 8的Stream API中的`distinct()`方法...
List<User> result = new ArrayList<>(set); ``` 重写hashCode和equals方法 在使用HashSet去重时,我们需要重写hashCode和equals方法,否则HashSet将无法正确地去重。下面是一个示例代码: ```java @Override ...
Java中ArrayList去除重复元素(包括字符串和自定义对象) 在Java中,ArrayList是一种常用的集合类,但是在实际应用中,我们经常会遇到重复元素的问题,例如字符串或自定义对象的重复元素。在本文中,我们将介绍如何...
List<Integer> list = new ArrayList<>(); list.add(11); list.add(12); list.add(13); list.add(14); list.add(15); list.add(11); System.out.println(list); Set<Integer> set = new HashSet<>(); List...
ArrayList<String> arr = new ArrayList<String>(); arr.add("aaa"); arr.add("bbb"); arr.add("aaa"); arr.add("ccc"); arr = getNewList(arr); System.out.println(arr); } } ``` 删除 Android List 中的...
ArrayList<Person> al = new ArrayList<>(); al.add(new Person("zhangsan1", 22)); al.add(new Person("zhangsan2", 33)); al.add(new Person("zhangsan3", 44)); al.add(new Person("zhangsan5", 88)); al....
四、`List`集合去除重复 Java 8引入了`Set`接口的流操作,可以通过以下方式去重: ```java List<String> list = ...; List<String> uniqueList = list.stream() .distinct() .collect(Collectors.toList()); ```...
List<String> nameList = new ArrayList<String>(); // 添加元素... nameSet.addAll(nameList); ``` 然而,当我们处理自定义的对象(如`User`类)时,情况就会有所不同。默认情况下,两个对象只有当它们引用同一个...
List<String> strList = new ArrayList<String>(); for (int i = 0; i < depart.length; i++) { if (!strList.contains(depart[i])) { strList.add(depart[i]); } } // 将处理后的数据放入JSON对象并返回 ...
List<String> list= new ArrayList<>(); for (String s:words) { if (!list.contains(s)) { list.add(s); } } ``` _注意_:当数据元素是实体类时,需要额外重写_equals_()和_hashCode_()方法,以便正确地比较...
List<Student> list = new ArrayList<>(); // 添加元素... Set<Student> set = new HashSet<>(list); // 此时set中已无重复元素 // 从原list中移除重复元素 list.retainAll(set); // 或者使用 // list....
去除重复元素,可以先将元素放入HashSet,因为其不允许重复。 8. **Tomcat类加载器顺序**:Bootstrap加载JDK核心类,ExtClassLoader加载扩展目录的类,AppClassLoader加载应用类路径的类,WebappClassLoader加载每...
2. 调用`ItemsDao`的`getAllItems()`方法获取所有商品数据,并存储到`ArrayList<Items>`列表中。 3. 遍历列表,将每个商品的信息(如ID、图片等)渲染到HTML页面上,供用户浏览。 【去除重复浏览记录的策略】 要...
* 高效去重:这个示例代码使用了Iterator对象来迭代ArrayList对象中的元素,然后使用contains方法来检查当前元素是否已经存在于新的ArrayList对象中,从而实现了高效的去重功能。 * 灵活性强:这个示例代码可以应用...