gpt4 book ai didi

Java Hamcrest匹配器相当于sql连接操作

转载 作者:行者123 更新时间:2023-12-02 01:56:39 25 4
gpt4 key购买 nike

我有 2 个包含对象的列表,例如:list1 有对象 person人具有以下属性:姓名、ID、地址

list2 具有对象员工员工具有以下属性:orgId、id、工资

员工中的 id 与个人中的 id 相同。

我正在尝试过滤/获取名称为 ['john', 'wick', 'tom'] 的所有员工

如果我使用 SQL 语句,这很容易实现,但是在 Java hamcrest 或其他匹配器中是否有等效的方法?

当我卡住时,我正在执行以下操作。

List selected = select(
list2,
having(
on(Employee.class).getId(),
equalTo("")
)
);

最佳答案

除了匹配器之外,您可能还想使用流和谓词:

List<Person> selected = list1.stream()
.filter(person -> list2.stream().anyMatch(employee -> employee.getId().equals(person.getId())))
.collect(toList());

关于Java Hamcrest匹配器相当于sql连接操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52192884/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com