[ https://issues.apache.org/jira/browse/COLLECTIONS-795?focusedWorklogId=606864&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-606864 ]
ASF GitHub Bot logged work on COLLECTIONS-795: ---------------------------------------------- Author: ASF GitHub Bot Created on: 04/Jun/21 08:32 Start Date: 04/Jun/21 08:32 Worklog Time Spent: 10m Work Description: anantdamle commented on pull request #238: URL: https://github.com/apache/commons-collections/pull/238#issuecomment-854278433 @garydgregory there is one big difference with ZippingIterator, ZippingIterator allows iterating over iteratord of same generic type, whereas the proposed solution allows using two different types and hence needs a Pair equivalent class. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. For queries about this service, please contact Infrastructure at: us...@infra.apache.org Issue Time Tracking ------------------- Worklog Id: (was: 606864) Time Spent: 5.5h (was: 5h 20m) > 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: 5.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)