groovy 指导:将并行增量嵌套循环转换为流

dy2hfwbg  于 2023-03-07  发布在  其他
关注(0)|答案(1)|浏览(116)

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

def a = [12,34,5,64,24,56], b = [1,23,45]

for(int i=0;i<a.size();)
    for(int j=0;j<b.size() && a[i];j++)
        println a[i++]+","+b[j]

输出:

12,1
34,23
5,45
64,1
24,23
56,45

我尝试了一些方法,但我不知道如何从内循环递增外循环。任何指导是赞赏。以下代码是我做得最远。

a.stream().forEach({x ->
    b.stream().filter({y-> y%2 != 0}).forEach({ y-> 
        println x+","+y
    });
});

输出:

12,1
12,23
12,45
34,1
34,23
34,45
5,1
5,23
5,45
64,1
64,23
64,45
24,1
24,23
24,45
56,1
56,23
56,45
oalqel3c

oalqel3c1#

IntStream.range(0, left.length)
         .mapToObj(x -> left[x] + " " + right[x % right.length])
         .forEachOrdered(System.out::println);

其中lefta,而rightb

相关问题