Java list根据id查找对象
时间: 2023-11-25 15:06:59 浏览: 41
假设我们有一个类Person,其中有一个属性id,我们需要根据id查找Person对象。
首先,我们需要定义一个List<Person>,并向其中添加多个Person对象。
然后,我们可以使用Java 8的流式API来查找符合条件的Person对象。
代码示例如下:
```java
List<Person> personList = new ArrayList<>();
personList.add(new Person(1, "Tom"));
personList.add(new Person(2, "Jerry"));
personList.add(new Person(3, "Mike"));
int id = 2;
Optional<Person> optionalPerson = personList.stream()
.filter(person -> person.getId() == id)
.findFirst();
if (optionalPerson.isPresent()) {
Person person = optionalPerson.get();
System.out.println("Found person with id " + id + ": " + person.getName());
} else {
System.out.println("Person with id " + id + " not found!");
}
```
在上面的代码中,我们首先定义了一个List<Person>,并向其中添加了三个Person对象。
然后,我们定义一个变量id,表示要查找的Person对象的id。
接下来,我们使用Java 8的流式API对personList进行筛选,只选择id等于指定值的Person对象。
最后,我们使用Optional类来处理可能为空的结果。如果找到了符合条件的Person对象,我们就打印出它的名字;否则,我们就打印出未找到的提示信息。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)