三十四、java版 SpringCloud分散式微服務雲架構之Java Iterator(迭代器)

JIAN2發表於2021-10-22

Java Iterator(迭代器)

Java Iterator(迭代器)不是一個集合,它是一種用於訪問集合的方法,可用於迭代 ArrayList 和 HashSet 等集合。需要框架原始碼的朋友可以看我個人簡介聯絡我,推薦分散式架構

 

Iterator 是 Java 迭代器最簡單的實現,ListIterator 是 Collection API 中的介面, 它擴充套件了 Iterator 介面。

迭代器 it 的兩個基本操作是 next 、hasNext 和 remove。

呼叫 it.next() 會返回迭代器的下一個元素,並且更新迭代器的狀態。

呼叫 it.hasNext() 用於檢測集合中是否還有元素。

呼叫 it.remove() 將迭代器返回的元素刪除。

Iterator 類位於 java.util 包中,使用前需要引入它,語法格式如下:

1
import  java.util.Iterator;  // 引入 Iterator 類

獲取一個迭代器

集合想獲取一個迭代器可以使用 iterator() 方法:

例項

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// 引入 ArrayList 和 Iterator 類
import  java.util.ArrayList;
import  java.util.Iterator;
 
public  class  minglisoftTest {
     public  static  void  main( String [] args) {
 
         // 建立集合
         ArrayList<string> sites =  new  ArrayList<string>();
         sites.add( "Google" );
         sites.add( "minglisoft" );
         sites.add( "Taobao" );
         sites.add( "Zhihu" );
 
         // 獲取迭代器
         Iterator<string> it = sites.iterator();
 
         // 輸出集合中的第一個元素
         System.out.println(it.next());
     }
}</string></string></string>

執行以上程式碼,輸出結果如下:

1
Google

迴圈集合元素

讓迭代器 it 逐個返回集合中所有元素最簡單的方法是使用 while 迴圈:

1
2
3
while (it.hasNext()) {
     System.out.println(it.next());
}

以下輸出集合 sites 中的所有元素:

例項

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// 引入 ArrayList 和 Iterator 類
import  java.util.ArrayList;
import  java.util.Iterator;
 
public  class  minglisoftTest {
     public  static  void  main( String [] args) {
 
         // 建立集合
         ArrayList<string> sites =  new  ArrayList<string>();
         sites.add( "Google" );
         sites.add( "minglisoft" );
         sites.add( "Taobao" );
         sites.add( "Zhihu" );
 
         // 獲取迭代器
         Iterator<string> it = sites.iterator();
 
         // 輸出集合中的所有元素
         while (it.hasNext()) {
             System.out.println(it.next());
         }
     }
}</string></string></string>

執行以上程式碼,輸出結果如下:

1
2
3
4
Google
minglisoft
Taobao
Zhihu

刪除元素

要刪除集合中的元素可以使用 remove() 方法。

以下例項我們刪除集合中小於 10 的元素:

例項

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// 引入 ArrayList 和 Iterator 類
import  java.util.ArrayList;
import  java.util.Iterator;
 
public  class  minglisoftTest {
     public  static  void  main( String [] args) {
         ArrayList<integer> numbers =  new  ArrayList<integer>();
         numbers.add( 12 );
         numbers.add( 8 );
         numbers.add( 2 );
         numbers.add( 23 );
         Iterator<integer> it = numbers.iterator();
         while (it.hasNext()) {
             Integer i = it.next();
             if (i <  10 ) {  
                 it.remove();   // 刪除小於 10 的元素
             }
         }
         System.out.println(numbers);
     }
}</integer></integer></integer>

執行以上程式碼,輸出結果如下:

1
[ 12 23 ]


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70006413/viewspace-2838692/,如需轉載,請註明出處,否則將追究法律責任。

相關文章