Stream API将对象中的某一字段取出转换为list或数组
尚且年轻,就多吃点苦,多出去闯一闯,我们有很多的机会与时间,加油,我们一起!
List<DevicePartMaintain> devicePartMaintainList =
devicePartMaintainMapper.selectDevicePartMaintainByMitId(mitId);
所有id转换为List
要使用Stream流获取devicePartMaintainList
中所有的id,您可以使用stream()
方法将列表转换为流,然后使用map()
方法从每个DevicePartMaintain
对象中提取id,最后使用collect()
方法将结果收集到一个列表中。以下是示例代码:
List<Long> idList = devicePartMaintainList.stream()
.map(DevicePartMaintain::getId)
.collect(Collectors.toList());
在上述代码中,stream()
方法将devicePartMaintainList
转换为一个流。然后,map()
方法将每个DevicePartMaintain
对象映射为其对应的id。最后,collect(Collectors.toList())
方法将所有的id收集到一个列表中。
请注意,上述示例假设每个DevicePartMaintain
对象都有一个名为id
的getter方法,用于返回其对应的id。您需要根据实际情况进行调整。
通过这种方式,您可以使用Stream流非常方便地获取devicePartMaintainList
中的所有id。
所有id转换为数组
在上述代码中,您将Stream流收集到一个List<Long>
中,但是您想要将其转换为Long[]
数组。要实现这一点,您可以通过使用toArray()
方法将List<Long>
转换为Long[]
数组。以下是修改后的代码示例:
Long[] idArray = devicePartMaintainList.stream()
.map(DevicePartMaintain::getId)
.toArray(Long[]::new);
在上述代码中,toArray(Long[]::new)
将List<Long>
转换为Long[]
数组。
请注意,如果DevicePartMaintain
的id属性是基本类型(例如long
)而不是对象类型(例如Long
),则需要将toArray()
方法的参数Long[]::new
替换为toArray(size -> new long[size])
。
通过这种方式,您可以将devicePartMaintainList
中的所有id转换为Long[]
数组。

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)