首页 > 解决方案 > 如何将元素与对象的列表匹配并返回对象

问题描述

我有一个类似的对象模型:

List<User> userList; //and each user contains list of address
List<Address>; 

class User {

    private Long id;
    List<Address> address;

    // getters & setters
} 

class Address {

    Long id
}

现在我需要从 Java Stream API 中找到预定义地址 id 的用户,4比如说userList

标签: javalistjava-8java-stream

解决方案


 Optional<User> user = userList.stream()
         .filter(x -> x.getAddress().stream().anyMatch(a -> a.getId() == 4))
         .findAny();

推荐阅读