1. 程式人生 > >Java中的集合——迭代器

Java中的集合——迭代器


集合的由來

陣列長度是固定,當新增的元素超過了陣列的長度時需要對陣列重新定義,太麻煩。

java 內部給我們提供了集合類,能儲存任意物件,長度是可以改變的,隨著元素的增加而增加,隨著元素的減少而減少 


陣列和集合的區別

區別1 : 

陣列既可以儲存基本資料型別,又可以儲存引用資料型別,基本資料型別儲存的是值,引用資料型別儲存的是地址值。

集合只能儲存引用資料型別(物件)集合中也可以儲存基本資料型別,但是在儲存的時候會自動裝箱變成物件。


區別2:

陣列長度是固定的,不能自動增長。

集合的長度的是可變的,可以根據元素的增加而增長。


陣列和集合什麼時候用

1)如果元素個數是固定的推薦用陣列

2)如果元素個數不是固定的推薦用集合


集合繼承體系圖




集合的遍歷之秩代器遍歷


    秩帶器概述


集合是用來儲存元素,儲存的元素需要檢視,那麼就需要迭代(遍歷) 

public class  Interator{

  public  static void main(String[] args){

       Collection  c = new  ArrayList();

        c.add("a");

        c.add("b");

        c.add("c");

         Interator it = c.iterator();

      while(it.hasNext()){

              System.put.println(it.next());

}

       }

}

執行結果:

a

b

c


秩代器的原理

迭代器是對集合進行遍歷,而每一個集合內部的儲存結構都是不同的,所以每一個集合存和取都是不一樣,那麼就需要在每一個類中定義 hasNext() 和 next() 方法,這樣做是可以的,但是會讓整個集合體系過於臃腫。


迭代器是將這樣的方法向上抽取出介面,然後在每個類的內部,定義自己迭代方式,這樣做的好處有二:

第一:規定了整個集合體系的遍歷方式都是hasNext()和next()方法

第二:程式碼有底層內部實現,使用者不用管怎麼實現的,會用即可