在Java中 用stream,如何遍历并替换String类型的List,如果某个元素等于’a’,将其替换为’b’,然后拼接所有修改后的元素形成一个新的字符串?
时间: 2024-12-12 13:22:49 浏览: 8
在Java中,你可以使用Stream API来遍历和操作List。首先,假设你有一个`List<String>`,可以这样做:
```java
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<String> list = Arrays.asList("a", "b", "c", "a", "d", "e");
// 使用Stream API 替换'a'为'b'
List<String> modifiedList = list.stream()
.map(s -> s.equals("a") ? "b" : s)
.collect(Collectors.toList());
// 拼接所有修改后的元素形成新的字符串
String result = modifiedList.stream().reduce("", (s1, s2) -> s1 + s2);
System.out.println(result); // 输出 "bdbcbe"
}
}
```
在这个例子中,我们使用了`map()`函数来判断每个元素是否等于"a",如果是就替换为"b",否则保持不变。然后使用`reduce()`函数将所有元素连接成一个字符串。
阅读全文