List<ParamItem> lists,里如何查找里面id=3行,所在的value

如果你有一个名为 listsList<ParamItem>,并且想要查找其中 id 为 3 的行,并获取对应的 value 值,可以使用 Java 8 引入的 Stream API 来实现。

下面是一个示例代码:

import java.util.List;
import java.util.Optional;

public class Main {
    public static void main(String[] args) {
        List<ParamItem> lists = ...;  // 假设你已经有了一个 ParamItem 对象的列表
        
        Optional<Integer> valueOptional = lists.stream()
                .filter(item -> item.getId() == 3)
                .map(ParamItem::getValue)
                .findFirst();

        if (valueOptional.isPresent()) {
            int value = valueOptional.get();
            System.out.println("找到 id 为 3 的行,对应的 value 值为: " + value);
        } else {
            System.out.println("未找到 id 为 3 的行");
        }
    }
}

class ParamItem {
    private int id;
    private int value;

    // 构造函数、getter 和 setter 方法省略
}

在这个示例中,我们使用了 Stream 的 filter() 方法来过滤出 id 等于 3 的行,然后使用 map() 方法将过滤后的结果映射为 value 值。最后,使用 findFirst() 方法获取第一个匹配的结果(如果存在)。

如果找到了对应的行,就可以通过 get() 方法获取 Optional 中的值;否则,可以根据需要进行相应的处理。

posted @ 2024-02-01 16:46  盘思动  阅读(42)  评论(0)    收藏  举报