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

时间:2018-06-15 10:01:42

标签: groovy java-8 stream iteration java-stream

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

while ( $index < $size ) {
        foreach($tmpArray[$index] as $path)
        $tmp .= '<anhang location="REMOTE" gruppe="BILD">' . "\n"
                . '<format>JPEG</format>' . "\n"
                . '<daten>' . "\n"
                . '<pfad>' .  $path . '</pfad>' . "\n"
                . '</daten>' . "\n"
                . '</anhang>' . "\n \n";
        $index ++;
    }

输出:

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
    });
});

1 个答案:

答案 0 :(得分:0)

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

其中leftarightb