stream分组后取对象属性
时间: 2023-10-22 09:03:43 浏览: 97
在Java8的Stream中,我们可以使用groupingBy收集器来方便地根据对象集合的某个属性值进行分组。具体做法是通过引用属性的方法引用,然后使用groupingBy方法进行分组。例如,我们可以使用GoodsInfoOut对象的getClassificationOperationId方法引用来根据该属性值进行分组,返回一个以该属性值为键,以对应属性值的对象集合为值的Map。
另外,如果我们希望获取分组后每个组的某个属性,比如获取分组后的所有属性A值,我们可以使用map方法,通过引用属性的方法引用来获取对应的属性值。例如,如果我们有一个Map<String, List<GoodsInfoOut>> groupMap来存储分组后的结果,我们可以使用values方法获取所有分组后的对象集合,然后使用stream进行操作,最后使用map方法获取每个对象的属性A值,最终可以通过toList方法将属性A的值列表返回。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [Stream流使用groupingBy+mapping实现对分组之后的对象集合转化为对象的某个属性的集合](https://blog.csdn.net/qq_27607579/article/details/89499911)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [解说Java Stream](https://blog.csdn.net/huang714/article/details/128777339)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文