方式一:
List listTemp = new ArrayList();
for(int i=0;i
if(!listTemp.contains(list.get(i))){
listTemp.add(list.get(i));
}
}
方式二:
方式三:
list=list.stream()
.distinct()
.collect(Collectors.toList());
注意此处collect方法返回的是一个新的字符串
, ?> List java.util.stream.Stream.collect(Collector super String, ?, List> collector)
Distinct()只能对于简单的如List等起作用,而对于List不起作用。
方法四:
对于list的对象的集合
List bills = CollectionUtils.isNotEmpty(ids)?commonInfoDao.listBillDataByIds(ids):new ArrayList<>();
bills = bills.stream().filter(StreamAPIUtil.distinctByKey(PexContentBill::getBillId)).collect(Collectors.toList());