java - 如何从列表中删除重复项?

标签 java list collections duplicates

我想从列表中删除重复项,但我所做的不起作用:

List<Customer> listCustomer = new ArrayList<Customer>();    
for (Customer customer: tmpListCustomer)
{
  if (!listCustomer.contains(customer)) 
  {
    listCustomer.add(customer);
  }
 }

最佳答案

假设您想要保留当前订单并且不想要Set,也许最简单的是:

List<Customer> depdupeCustomers =
    new ArrayList<>(new LinkedHashSet<>(customers));

如果您想更改原始列表:

Set<Customer> depdupeCustomers = new LinkedHashSet<>(customers);
customers.clear();
customers.addAll(dedupeCustomers);

关于java - 如何从列表中删除重复项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57746861/

相关文章:

python - 基于 Python 中项目的深度值创建列表结构

java - 具有良好(插入,迭代)性能特征的Java中的原始多图

java - 如何将 Scala Iterable 转换为 Java util.List?

java - 如何测试是否正在调用带有 @KafkaListener 的方法

java - 使 Java getAbsolutePath() 在所有机器上返回正斜杠

java - 签署 jar 后(部署为小程序)我可以在任何域上托管该小程序吗?

java - 即使是单个学生或单个类(class),返回集合或集合的接口(interface)是一个好习惯吗?如果是,为什么?

java - 如何从Java中的ISO8601周数计算日期

java - 检查来自另一个 java 类的登录系统的列表元素

列表计数元素的Python列表