You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Stream API创建key来自long类型列表、value固定为0的Map<Long,Long>

Java Stream 列表转固定值Map实现方案

你可以直接使用Collectors.toMap的三参数重载实现需求,代码如下:

import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;

// 核心转换逻辑
Map<Long, Long> map = list1.stream()
        .collect(Collectors.toMap(
                Function.identity(), // Map的键取列表元素本身
                key -> 0L, // 所有键对应的value固定为0
                (oldVal, newVal) -> oldVal // 重复键时保留已有值,实现自动去重
        ));

代码说明

  • 三参数的toMap重载自带重复键处理逻辑,不会因为列表中存在重复元素抛出冲突异常
  • 最终生成的Map默认是HashMap实现,天然不保证元素顺序,符合要求
  • 针对示例输入list1 = [1, 2, 3, 1, 3],执行后得到的Map结果为{1:0, 2:0, 3:0},完全匹配预期

内容的提问来源于stack exchange,提问作者user13034249

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 19:54:03