/**
* 去除重复的数字
*/
@Test
public void distinctNumber() {
List<Integer> list = Arrays.asList(3, 4, 5, 3, 6, 7, 8, 10, 4, 7, 6, 6, 5, 10, 10, 44);
List<Integer> deleteList = new ArrayList<>();
Set<Integer> listSet = new HashSet<>();
// for (int i = 0; i < list.size(); i++) {
// if (!listSet.contains(list.get(i))) {
// listSet.add(list.get(i));
// } else {
// deleteList.add(i);
// }
// }
list.stream().forEach(item -> {
if (!listSet.contains(item)) {
listSet.add(item);
} else {
deleteList.add(item);
}
});
List<Integer> resultList = new ArrayList();
resultList.addAll(list);
logger.info("去重前的数字:{}", list);
logger.info("去重后的数字:{}", listSet);
logger.info("重复的数字:{}", deleteList);
}
单元测试结果: