stream()字符串拼接
时间: 2023-10-18 08:26:11 浏览: 41
使用Java 8的Stream可以很方便地进行字符串拼接。首先,你需要将要拼接的字段提取出来,然后使用Collectors.joining(delimiter)方法进行拼接,其中delimiter是你想要使用的分隔符。在你提供的代码中有两个示例可以说明这个过程。
第一个示例中,通过map方法将FtUser对象的id字段提取出来,并使用Collectors.toSet()方法将其收集到一个Set集合中。然后,使用StringUtils.join(set, ",")方法将Set集合中的元素使用逗号进行拼接。
```java
Set<Integer> set = list.stream().map(FtUser::getId).collect(Collectors.toSet());
String result = StringUtils.join(set, ",");
```
第二个示例中,通过map方法将Student对象的name字段提取出来,并使用Collectors.joining(COMMA)方法将其以自定义的逗号分隔符进行拼接。
```java
String names = studentList.stream()
.map(Student::getName)
.collect(Collectors.joining(COMMA));
```
请注意,在使用这些方法之前,你需要确保导入正确的包,如java.util.stream.Collectors和org.apache.commons.lang3.StringUtils。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [Java使用stream将List中所有对象的某个字段拼接成字符串](https://blog.csdn.net/weixin_44380294/article/details/125166120)[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: 33.333333333333336%"]
- *2* [java8源码-guava-demo:番石榴演示](https://download.csdn.net/download/weixin_38591223/19391093)[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: 33.333333333333336%"]
- *3* [使用stream拼接字符串](https://blog.csdn.net/weixin_48149562/article/details/124268808)[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: 33.333333333333336%"]
[ .reference_list ]