1. 程式人生 > >ListIterator迭代器

ListIterator迭代器

一 ListIterator迭代器的概述

ListIterator與Iterator介面不同,它不僅可以向後迭代,它還可以向前迭代。

ListIterator相對Iterator增加了如下3個方法:

boolean hasPrevious():返回該迭代器關聯的集合是否還有上一個元素。

Object previous():返回該迭代器的上一個元素。

void add():在指定位置插入一個元素。

 

二 ListIterator迭代器的應用

1 程式碼示例


     
  1. import java.util.*;
  2. public class ListIteratorTest
  3. {
  4. public static void main(String[] args)
  5. {
  6. String[] books = {
  7. "十萬個為什麼"
    , "photoshop完全自學教程",
  8. "教你如何炒股"
  9. };
  10. List bookList = new ArrayList();
  11. for ( int i = 0; i < books.length ; i++ )
  12. {
  13. bookList.add(books[i]);
  14. }
  15. ListIterator lit = bookList.listIterator();
  16. while (lit.hasNext())
  17. {
  18. System.out.println(lit.next());
  19. lit.add( "++++++++++分隔符++++++++++");
  20. }
  21. System.out.println( "=======下面開始反向迭代=======");
  22. while(lit.hasPrevious())
  23. {
  24. System.out.println(lit.previous());
  25. }
  26. }
  27. }

2 執行結果

十萬個為什麼
photoshop完全自學教程
教你如何炒股
=======下面開始反向迭代=======
++++++++++分隔符++++++++++
教你如何炒股
++++++++++分隔符++++++++++
photoshop完全自學教程
++++++++++分隔符++++++++++
十萬個為什麼

3 程式碼說明

該程式碼先通過hasNext正向迭代集合,然後使用hasPrevious反向迭代集合,其中還用到add方法向集合中新增元素。

一 ListIterator迭代器的概述

ListIterator與Iterator介面不同,它不僅可以向後迭代,它還可以向前迭代。

ListIterator相對Iterator增加了如下3個方法:

boolean hasPrevious():返回該迭代器關聯的集合是否還有上一個元素。

Object previous():返回該迭代器的上一個元素。

void add():在指定位置插入一個元素。

 

二 ListIterator迭代器的應用

1 程式碼示例


   
  1. import java.util.*;
  2. public class ListIteratorTest
  3. {
  4. public static void main(String[] args)
  5. {
  6. String[] books = {
  7. "十萬個為什麼", "photoshop完全自學教程",
  8. "教你如何炒股"
  9. };
  10. List bookList = new ArrayList();
  11. for ( int i = 0; i < books.length ; i++ )
  12. {
  13. bookList.add(books[i]);
  14. }
  15. ListIterator lit = bookList.listIterator();
  16. while (lit.hasNext())
  17. {
  18. System.out.println(lit.next());
  19. lit.add( "++++++++++分隔符++++++++++");
  20. }
  21. System.out.println( "=======下面開始反向迭代=======");
  22. while(lit.hasPrevious())
  23. {
  24. System.out.println(lit.previous());
  25. }
  26. }
  27. }

2 執行結果

十萬個為什麼
photoshop完全自學教程
教你如何炒股
=======下面開始反向迭代=======
++++++++++分隔符++++++++++
教你如何炒股
++++++++++分隔符++++++++++
photoshop完全自學教程
++++++++++分隔符++++++++++
十萬個為什麼

3 程式碼說明

該程式碼先通過hasNext正向迭代集合,然後使用hasPrevious反向迭代集合,其中還用到add方法向集合中新增元素。