[ 
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)

Reply via email to