gpt4 book ai didi

java - 将嵌套循环转换为流 Java 8

转载 作者:行者123 更新时间:2023-12-05 00:48:35 25 4
gpt4 key购买 nike

我正在尝试将下面的嵌套循环转换为 Java 8 流。

newself2 中的每个元素都是一个字符串列表 - ["1 2","3 4"] 需要更改为 ["1","2","3","4"]。

for (List<String> list : newself2) {
// cartesian = [["1 2","3 4"],["4 5","6 8"]...] list = ["1 2","3 4"]...
List<String> clearner = new ArrayList<String>();
for (String string : list) { //string = "1 3 4 5"
for (String stringElement : string.split(" ")) {
clearner.add(stringElement);
}
}
newself.add(clearner);
//[["1","2","3","4"],["4","5","6","8"]...]
}

到目前为止我所尝试的 -

newself2.streams().forEach(list -> list.foreach(y -> y.split(" ")))  

现在我确定如何将内部 for 循环中的拆分数组添加到 x 的新列表中?

非常感谢任何帮助。

最佳答案

我会这样做:

List<List<String>> result = newself2.stream()
.map(list -> list.stream()
.flatMap(string -> Arrays.stream(string.split(" ")))
.collect(Collectors.toList()))
.collect(Collectors.toList());

关于java - 将嵌套循环转换为流 Java 8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49743727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com