public class Test { public static void main(String[] args) { List<String> list = new ArrayList<>(); List<String> list2 = new ArrayList<>(); list.add("1"); list.add("1"); list.add("2"); list.add("2"); list.add("3"); List<String> collect = list.stream().filter(e -> { boolean flag = !list2.contains(e); // 去重 // boolean flag = list2.contains(e); // 取重 list2.add(e); return flag; }).collect(Collectors.toList()); System.out.println(collect); } }