第三次学JAVA再学不好就吃翔(part77)--迭代器遍历
生活随笔
收集整理的這篇文章主要介紹了
第三次学JAVA再学不好就吃翔(part77)--迭代器遍历
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
學習筆記,僅供參考,有錯必糾
文章目錄
- 集合
- 迭代器遍歷
- Iterator類
- Collection類的iterator方法
- 迭代器原理
- 舉個例子
集合
迭代器遍歷
- 迭代器概述
集合是用來存儲元素的,存儲的元素需要查看,那么就需要迭代(遍歷) 。
Iterator類
Iterator類是在java.util包下的一個類,用的時候需要導包,它是一個接口,不能被實例化。
- hasNext方法
如果仍有元素可以迭代,則返回 true。(換句話說,如果 next 返回了元素而不是拋出異常,則返回 true)。
- next方法
返回迭代的下一個元素。
Collection類的iterator方法
Iterator<E> iterator()
返回在此 collection 的元素上進行迭代的迭代器。關于元素返回的順序沒有任何保證(除非此 collection 是某個能提供保證順序的類實例)。
迭代器原理
迭代器是對集合進行遍歷,而每一個集合內部的存儲結構都是不同的,所以每一個集合存和取都是不一樣,那么就需要在每一個類中定義hasNext()和next()方法,這樣做是完全OK的,但是會讓整個集合體系過于臃腫,迭代器是將這樣的方法向上抽取出接口,然后在每個類的內部定義自己迭代方式,這樣做的好處有二:第一,規定了整個集合體系的遍歷方式都是hasNext()和next()方法;第二,代碼有底層內部實現,使用者不用管怎么實現的,會用即可。
舉個例子
package com.guiyang.restudy3; import java.util.ArrayList; import java.util.Collection; import java.util.Iterator;import com.guiyang.bean.Student;@SuppressWarnings({ "rawtypes", "unchecked" })public class D3Iterator {public static void main(String[] args) {Collection c = new ArrayList();c.add(new Student("張三", 23)); //Object obj = new Student("張三",23);c.add(new Student("李四", 24));c.add(new Student("王五", 25));c.add(new Student("趙六", 26));//獲取迭代器Iterator it = c.iterator();//java.util.Iteratorwhile(it.hasNext()) {//System.out.println(it.next());Student s = (Student)it.next(); //向下轉型System.out.println(s.getName() + "..." + s.getAge());}}}
輸出:
張三...23 李四...24 王五...25 趙六...26總結
以上是生活随笔為你收集整理的第三次学JAVA再学不好就吃翔(part77)--迭代器遍历的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 第三次学JAVA再学不好就吃翔(part
- 下一篇: 第三次学JAVA再学不好就吃翔(part