Data::ArrayList::ListIterator - iterator for Data::ArrayList
version 0.01
use Data::ArrayList; my $dal = Data::ArrayList->new(); $dal->addAll( 1 .. 100 ); my $iter = $dal->listIterator(); while ( $iter->hasNext ) { my $idx = $iter->nextIndex; my $elem = $iter->next; $iter->add( "$elem from $idx again" ); } while ( $iter->hasPrevious ) { my $idx = $iter->previousIndex; my $elem = $iter->previous; $iter->remove if $elem =~ / again$/; }
Data::ArrayList::ListIterator provides iterator for Data::ArrayList.
while ( $it->hasNext() ) { say $it->next; }
Returns true if this list iterator has more elements when traversing the list in the forward direction.
while ( $it->hasPrevious() ) { say $it->previous; }
Returns true if this list iterator has more elements when traversing the list in the reverse direction.
while ( $it->hasNext() ) { my $index = $it->nextIndex(); $dal->get($index) == $it->next; }
Returns the index of the element that would be returned by a subsequent call to "next".
Returns list size if the list iterator is at the end of the list.
while ( $it->hasPrevious() ) { my $index = $it->previousIndex(); $dal->get($index) == $it->previous; }
Returns the index of the element that would be returned by a subsequent call to "previous".
Returns -1 if the list iterator is at the beginning of the list.
Returns the next element in the list. This method may be called repeatedly to iterate through the list, or intermixed with calls to "previous" to go back and forth.
Note: alternating calls to "next" and "previous" will return the same element repeatedly.
Returns the previous element in the list. This method may be called repeatedly to iterate through the list, or intermixed with calls to "next" to go back and forth.
while ( $it->hasNext() ) { say $it->next; $it->remove; }
Removes from the list the last element that was returned by "next" or "previous".
This call can only be made once per call to "next" or "previous". It can be made only if "add" has not been called after the last call to "next" or "previous".
while ( $it->hasNext() ) { $it->set( encrypt($it->next) ); }
Replaces the last element returned by "next" or "previous" with the specified element.
This call can be made only if neither "remove" nor "add" have been called after the last call to "next" or "previous".
while ( $it->hasNext() ) { $it->add( $it->next ); # duplicate all elements }
Inserts the specified element into the list. The element is inserted immediately before the next element that would be returned by "next", if any, and after the next element that would be returned by "previous", if any.
If the list contains no elements, the new element becomes the sole element on the list.
The new element is inserted before the implicit cursor: a subsequent call to "next" would be unaffected, and a subsequent call to "previous" would return the new element.
This call increases by one the value that would be returned by a call to "nextIndex" or "previousIndex".
Data::ArrayList
Alex J. G. Burzyński <ajgb@cpan.org>
This software is copyright (c) 2010 by Alex J. G. Burzyński <ajgb@cpan.org>.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install Data::ArrayList, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Data::ArrayList
CPAN shell
perl -MCPAN -e shell install Data::ArrayList
For more information on module installation, please visit the detailed CPAN module installation guide.