The given example uses arrays of the same length, so pairwise looks fine to me.
And if they are not of the same length, I think the same way as JavaFan, that iswas left as an exercise to the reader. I don'tdidn't want to guess, what has to happen if the lengths differ. It's the OP who should know, what to do.
Nevertheless, thanks for your examples ;o)
Update:
What about this pairwise solution to work with arrays of different lengths:
use List::MoreUtils qw( pairwise ); my @a=(1 .. 5 ); my @b=( 'a' .. 'c' ); ### Good point from JavaFan; bad idea to ignore 0 ### my @combined = pairwise { ( $a || '' ) .':'. ( $b || '' ) } @a, @b +; ### fixed: my @combined = pairwise { ( defined $a ? $a : '' ) .':'. ( defined $b +? $b : '' ) } @a, @b; { local $,="\n", print @combined; }
In reply to Re^3: iterating 2 arrays in parallel
by linuxer
in thread iterating 2 arrays in parallel
by Anonymous Monk
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |