可以使用Java 8的Stream API来实现排除掉codes中已存在的user。

首先,我们可以将codes列表转换为一个Set,以便快速查找codes中是否存在某个code。然后,使用Stream的filter操作筛选出不在codes中的user。

以下是代码示例:

import java.util.*;

class User {
    private String code;
    private String name;

    public User(String code, String name) {
        this.code = code;
        this.name = name;
    }

    public String getCode() {
        return code;
    }

    public String getName() {
        return name;
    }
}

public class Main {
    public static void main(String[] args) {
        List<User> users = new ArrayList<>();
        users.add(new User("001", "Alice"));
        users.add(new User("002", "Bob"));
        users.add(new User("003", "Charlie"));

        List<String> codes = new ArrayList<>();
        codes.add("001");
        codes.add("003");

        Set<String> codeSet = new HashSet<>(codes);

        List<User> filteredUsers = users.stream()
                .filter(user -> !codeSet.contains(user.getCode()))
                .toList();

        for (User user : filteredUsers) {
            System.out.println(user.getCode() + " - " + user.getName());
        }
    }
}

输出结果为:

002 - Bob
``
java8 listuser lists liststring codes; 其中user 分别有两个属性codename排除掉codes中已存在的user

原文地址: https://www.cveoy.top/t/topic/iBa0 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录