[ https://issues.apache.org/jira/browse/COLLECTIONS-795?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Anant Damle updated COLLECTIONS-795: ------------------------------------ Description: ZippingIterator provides a way to simulatenously iterate over multiple iterators of the *same-type.* The proposed pair iterator allows simultaneously iterating over two iterators of different type, like the example below: {code:java} Iterator<L> leftIterator = ...; Iterator<R> rightIterator = ...; PairIterator<L,R> pairIterator = PairIterator.of(leftIterator, rightIterator); while (pairIterator.hasNext()) { ImmutablePair<L,R> item = pairIterator.next(); ... }{code} Another convenience could be to use an Iterable for easy for-each constructs. {code:java} List<Integer> studentIds = ... List<String> studentNames = ... for (PairedItem<Integer, String> items : IterableUtils.pairedIterable(studentIds, studentNames) { Integer studentId = item.getLeft(); String studentName = item.getRight(); ... } {code} was: ZippingIterator provides a way to simulatenously iterate over multiple iterators of the *same-type.* The proposed pair iterator allows simultaneously iterating over two iterators of different type, like the example below: {code:java} Iterator<L> leftIterator = ...; Iterator<R> rightIterator = ...; PairIterator<L,R> pairIterator = PairIterator.of(leftIterator, rightIterator); while (pairIterator.hasNext()) { ImmutablePair<L,R> item = pairIterator.next(); ... }{code} > provide a PairIterator to zip two iterators of different types. > --------------------------------------------------------------- > > Key: COLLECTIONS-795 > URL: https://issues.apache.org/jira/browse/COLLECTIONS-795 > Project: Commons Collections > Issue Type: New Feature > Components: Iterator > Reporter: Anant Damle > Priority: Minor > Time Spent: 1.5h > Remaining Estimate: 0h > > ZippingIterator provides a way to simulatenously iterate over multiple > iterators of the *same-type.* > The proposed pair iterator allows simultaneously iterating over two iterators > of different type, like the example below: > {code:java} > Iterator<L> leftIterator = ...; > Iterator<R> rightIterator = ...; > PairIterator<L,R> pairIterator = PairIterator.of(leftIterator, rightIterator); > while (pairIterator.hasNext()) { > ImmutablePair<L,R> item = pairIterator.next(); > ... > }{code} > > Another convenience could be to use an Iterable for easy for-each constructs. > {code:java} > List<Integer> studentIds = ... > List<String> studentNames = ... > for (PairedItem<Integer, String> items : > IterableUtils.pairedIterable(studentIds, studentNames) { > Integer studentId = item.getLeft(); > String studentName = item.getRight(); > ... > } > {code} > -- This message was sent by Atlassian Jira (v8.3.4#803005)