stream 对象去重
时间: 2023-09-21 21:12:17 浏览: 108
对于Stream对象的去重,有两种方法可以实现。第一种方法是使用distinct()方法,它可以将整个对象进行去重操作。例如,如果有一个List对象list,可以使用list.stream().distinct()来去除重复的对象。
第二种方法是根据对象中某一属性进行去重。可以通过自定义方法来实现。例如,如果想根据对象中的年龄属性进行去重,可以使用filter()方法和distinctByKey1()方法来实现。代码如下:
list.stream().filter(distinctByKey1(s -> s.getAge())).forEach(System.out::println);
其中,distinctByKey1方法是自定义的方法,用于根据指定的属性进行去重。需要根据具体情况进行修改。这样可以实现根据对象的某一属性进行去重的操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *3* [Stream流中,根据对象去重+指定对象中的属性去重](https://blog.csdn.net/weixin_42260782/article/details/129826507)[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_2"}}] [.reference_item style="max-width: 50%"]
- *2* [Java中对List去重 Stream去重的解决方法](https://download.csdn.net/download/weixin_38667403/12761286)[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_2"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文