当前位置: 首页
AI教程
Java List根据ID数组过滤列表

Java List根据ID数组过滤列表

热心网友 时间:2026-05-30
转载

一、介绍 这段代码展示的其实是一个非常典型的场景:如何用 Java 8 的 Stream 流高效过滤集合中的元素。咱们直接看代码——先创建一个包含 10 个 User 对象的列表,每个对象里都有 id 和 name 两个字段。接着定义了一个 Integer 类型的数组 arr,里面存放了我们需要筛选

一、介绍

这段代码展示的其实是一个非常典型的场景:如何用 Java 8 的 Stream 流高效过滤集合中的元素。咱们直接看代码——先创建一个包含 10 个 User 对象的列表,每个对象里都有 id 和 name 两个字段。接着定义了一个 Integer 类型的数组 arr,里面存放了我们需要筛选的 id 值:1、2、5、6、9。

核心操作很简单:通过 stream() 把列表转换为流,然后使用 filter 方法进行过滤,过滤条件中用 Arrays.asList(arr).contains(item.getId()) 来判断当前元素的 id 是否存在于目标数组中。最后使用 collect(Collectors.toList()) 将结果收集为新的列表,再通过 forEach 遍历打印。

但这里面藏着一个极易踩坑的细节——注释里特意标出来了:数组类型必须使用 Integer 包装类型,绝对不能写成基本类型 int[]。为什么?因为 Arrays.asList 方法接收的是泛型参数,如果你传入一个 int[],它会被当作一个单独的元素来处理,contains 方法就永远无法匹配到你想要的 id。换句话说,整个过滤逻辑会直接失效。这个细节若不留意,线上排查可能耗费大半天时间。

二、代码

下面就是完整的测试代码,可以直接运行。

@Test
public void listFilter() {
    List list = new ArrayList<>();
    list.add(new User(1, "a"));
    list.add(new User(2, "b"));
    list.add(new User(3, "c"));
    list.add(new User(4, "d"));
    list.add(new User(5, "e"));
    list.add(new User(6, "f"));
    list.add(new User(7, "g"));
    list.add(new User(8, "h"));
    list.add(new User(9, "i"));
    list.add(new User(10, "j"));

    // 注意:数组类型必须使用 Integer 才能正确判断,若用 int 会导致过滤失败
    Integer[] arr = new Integer[]{1,2,5,6,9};

    List filterList = list.stream()
        .filter(item -> Arrays.asList(arr).contains(item.getId()))
        .collect(Collectors.toList());

    filterList.stream().forEach(System.out::println);
}
来源:https://bbs.huaweicloud.com/blogs/478382

游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。

同类文章
更多
Coze本地模型运行下载与路径配置性能优化指南

Coze本地模型运行下载与路径配置性能优化指南

Coze接入本地模型的核心在于先准备推理服务,再完成模型下载、存放路径配置、接口适配与性能调优,适合开发测试、数据内控和低成本原型验证场景。

时间:2026-07-12 06:46
Coze插件安装教程:浏览器、编辑器与扩展市场配置

Coze插件安装教程:浏览器、编辑器与扩展市场配置

Coze插件安装可分为平台内插件、浏览器扩展与编辑器扩展三类。配置前需确认账号权限、来源可信、授权范围和测试环境,新手按创建项目、安装插件、填写参数、调试发布的顺序操作更稳妥。

时间:2026-07-12 06:46
Coze API Key配置教程 账号注册 密钥获取 国内网络设置

Coze API Key配置教程 账号注册 密钥获取 国内网络设置

围绕Coze与扣子平台的APIKey配置流程,梳理账号注册、密钥创建、环境变量设置、国内网络连通性检查、调用验证、常见报错处理及安全使用边界。

时间:2026-07-12 06:45
Coze Docker一键部署教程:镜像拉取端口映射数据目录配置

Coze Docker一键部署教程:镜像拉取端口映射数据目录配置

面向想在本地或服务器部署Coze的用户,梳理Docker环境准备、镜像拉取、端口映射、数据目录挂载、启动检查、升级回滚与安全注意事项,帮助快速搭建稳定的AI智能体平台运行环境。

时间:2026-07-12 06:45
Coze Linux服务器部署:从环境准备到后台运行完整教程

Coze Linux服务器部署:从环境准备到后台运行完整教程

Coze适合团队搭建智能体应用与工作流。Linux部署建议优先采用容器方式,提前规划配置、端口、数据目录与安全策略,并通过服务化方式实现稳定后台运行。

时间:2026-07-12 06:45
热门专题
更多
刀塔传奇破解版无限钻石下载大全 刀塔传奇破解版无限钻石下载大全
洛克王国正式正版手游下载安装大全 洛克王国正式正版手游下载安装大全
思美人手游下载专区 思美人手游下载专区
好玩的阿拉德之怒游戏下载合集 好玩的阿拉德之怒游戏下载合集
不思议迷宫手游下载合集 不思议迷宫手游下载合集
百宝袋汉化组游戏最新合集 百宝袋汉化组游戏最新合集
jsk游戏合集30款游戏大全 jsk游戏合集30款游戏大全
宾果消消消原版下载大全 宾果消消消原版下载大全
  • 热门数据榜