Java使用ListIterator逆序ArrayList


對於列表而言,除了Iterator,還提供了一個功能更加強大的ListIterator。它可以實現逆序遍歷列表中的元素。本示例將使用其逆序遍歷ArrayList

思路分析:要逆序遍歷某個列表,首先要獲得一個ListIterator對象,利用for()循環,以ListIterator類的hasNext()方法作為判斷條件,通過循環執行ListIterator類的next()方法將游標定位到列表結尾,然后在另一個for循環中,以ListIterator類的hasPrevious()方法作為判斷條件,通過ListIterator類的previous()方法逆序輸出列表中的元素。

代碼如下:

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;

public class IteratorDemo {
	 public static void main(String[] args) {
	        List<Integer> list = new ArrayList<Integer>();// 創建列表
	        for (int i = 0; i < 10; i++) {// 向列表中增加10個元素
	            list.add(i);
	        }
	        Iterator it = list.iterator();
	        System.out.print("ArrayList集合中的元素為:");
	        while(it.hasNext()){
	        	System.out.print(it.next()+" ");
	        }	   
	        System.out.println();
	        System.out.println("逆序后為:");
	        ListIterator<Integer> li = list.listIterator();// 獲得ListIterator對象
	        for (li = list.listIterator(); li.hasNext();) {// 將游標定位到列表結尾
	            li.next();
	        }
	        for (; li.hasPrevious();) {// 逆序輸出列表中的元素
	            System.out.print(li.previous() + " ");
	        }
	    }
}

  效果如圖:


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM