今天给各位分享java8对象属性去重的知识,其中也会对进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
1、Java 中ArrayList如何去除其中重复的对象2、jdk1.8中list按对象的多个属性去重,按对象的某个属性分组3、java list如何去重4、Java中如何去除List中的重复的值
Java 中ArrayList如何去除其中重复的对象
去掉重复对象的方案很多, 比如利用set去重等.
参考代码
import java.util.ArrayList;
import java.util.HashSet;
public class Test {
public static void main(String[] args) {
ArrayListObject list =new ArrayListObject();
list.add(8);
list.add(2);
list.add(8);
list.add(7);
list.add(6);
list.add(5);
list.add(2);
list.add(7);
System.out.println(“原始集合”+list);
//方案1 . 不考虑list原始顺序的情况下
HashSetObject set = new HashSetObject(list);//把list作为参数放到HashSet的构造函数里,去掉重复元素
ArrayListObject result1= new ArrayListObject(set);//把set作为参数放到ArrayList构造函数里
System.out.println(result1);//输出result1
//方案2 考虑list的原始顺序
ArrayListObject result2 = new ArrayListObject();
for (int i = 0; i list.size(); i++) {
if(!result2.contains(list.get(i))) {//如果没有重复元素 ,才添加进结果集合result2
result2.add(list.get(i));
}
}
System.out.println(result2);//输出result2
}
}
输出
原始集合[8, 2, 8, 7, 6, 5, 2, 7]
[2, 5, 6, 7, 8]
[8, 2, 7, 6, 5]
jdk1.8中list按对象的多个属性去重,按对象的某个属性分组
List pdVos = pdVoListList.stream().collect(Collectors.collectingAndThen(Collectors.toCollection(() -new TreeSet(Comparator.comparing(o – o.getPiCode() +”;” + o.getDeveloperCode()))), ArrayList::new));// 按多个属性去重列表
MapString,ListPdVo pdVoMap = pdVos.stream().collect(Collectors.groupingBy(PdVo::getDeveloperCode));// 按某个属性分组
java list如何去重
ListString list = new ArrayList();
/*list.add(“abc”);
list.add(“abc”);
list.add(“def”);
list.add(“bcd”);*/
SetString set = new LinkedHashSet();//这种方式保证去重后的元素相对位置不变
//SetString set = new HashSet();//这种方式去重后元素的位置很有可能变化了
set.addAll(list);
list.clear();
list.addAll(set);
for(String s : list){
System.out.println(s);
}
整个思路就是利用set中的元素是不重复的,来达到去重的目的
Java中如何去除List中的重复的值
属性是????
先给你一个看看是不是你需要的好了,
// 利用 Set 的特性,将所有项目放入 Set
//中即可移除重复的项目
SetString stringSet = new HashSetString();
for (String element : duplicateArray) {
stringSet.add(element);
}
// Set.size() 为不重复项目的个数
String nonDuplicateArray[] = new String[stringSet.size()];
// 将 Set 中的项目取出放到 nonDuplicateArray 中
Object[] tempArray = stringSet.toArray();
for (int i = 0; i tempArray.length; i++) {
nonDuplicateArray[i] = (String) tempArray[i];
}
java8对象属性去重的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于、java8对象属性去重的信息别忘了在本站进行查找喔。