欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一文讀懂Java Iterator(迭代器)

 更新時(shí)間:2020年07月06日 11:50:09   作者:菜鳥(niǎo)教程  
這篇文章主要介紹了Java Iterator(迭代器)的相關(guān)資料,文中示例代碼非常詳細(xì),幫助大家更好的理解和學(xué)習(xí),感興趣的朋友可以了解下

Java Iterator(迭代器)不是一個(gè)集合,它是一種用于訪問(wèn)集合的方法,可用于迭代 ArrayList HashSet 等集合。

Iterator 是 Java 迭代器最簡(jiǎn)單的實(shí)現(xiàn),ListIterator 是 Collection API 中的接口, 它擴(kuò)展了 Iterator 接口。

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

調(diào)用 it.next() 會(huì)返回迭代器的下一個(gè)元素,并且更新迭代器的狀態(tài)。

調(diào)用 it.hasNext() 用于檢測(cè)集合中是否還有元素。

調(diào)用 it.remove() 將迭代器返回的元素刪除。

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

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

獲取一個(gè)迭代器

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

// 引入 ArrayList 和 Iterator 類
import java.util.ArrayList;
import java.util.Iterator;

public class RunoobTest {
 public static void main(String[] args) {

 // 創(chuàng)建集合
 ArrayList<String> sites = new ArrayList<String>();
 sites.add("Google");
 sites.add("Runoob");
 sites.add("Taobao");
 sites.add("Zhihu");

 // 獲取迭代器
 Iterator<String> it = sites.iterator();

 // 輸出集合中的第一個(gè)元素
 System.out.println(it.next());
 }
}

執(zhí)行以上代碼,輸出結(jié)果如下:

Google

循環(huán)集合元素

讓迭代器 it 逐個(gè)返回集合中所有元素最簡(jiǎn)單的方法是使用 while 循環(huán):

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

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

// 引入 ArrayList 和 Iterator 類
import java.util.ArrayList;
import java.util.Iterator;

public class RunoobTest {
 public static void main(String[] args) {

 // 創(chuàng)建集合
 ArrayList<String> sites = new ArrayList<String>();
 sites.add("Google");
 sites.add("Runoob");
 sites.add("Taobao");
 sites.add("Zhihu");

 // 獲取迭代器
 Iterator<String> it = sites.iterator();

 // 輸出集合中的所有元素
 while(it.hasNext()) {
  System.out.println(it.next());
 }
 }
}

執(zhí)行以上代碼,輸出結(jié)果如下:

Google
Runoob
Taobao
Zhihu

刪除元素

要?jiǎng)h除集合中的元素可以使用 remove() 方法。

以下實(shí)例我們刪除集合中小于 10 的元素:

// 引入 ArrayList 和 Iterator 類
import java.util.ArrayList;
import java.util.Iterator;

public class RunoobTest {
 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);
 }
}

執(zhí)行以上代碼,輸出結(jié)果如下:

[12, 23]

以上就是一文讀懂Java Iterator(迭代器)的詳細(xì)內(nèi)容,更多關(guān)于Java Iterator(迭代器)的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • springboot配置文件綁定實(shí)現(xiàn)解析

    springboot配置文件綁定實(shí)現(xiàn)解析

    這篇文章主要介紹了springboot配置文件綁定實(shí)現(xiàn)解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • 在Spring Boot中如何使用Cookies詳析

    在Spring Boot中如何使用Cookies詳析

    這篇文章主要給大家介紹了關(guān)于在Spring Boot中如何使用Cookies的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者使用Spring Boot具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-11-11
  • SpringBoot快速搭建web項(xiàng)目詳細(xì)步驟總結(jié)

    SpringBoot快速搭建web項(xiàng)目詳細(xì)步驟總結(jié)

    這篇文章主要介紹了SpringBoot快速搭建web項(xiàng)目詳細(xì)步驟總結(jié) ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • java String的深入理解

    java String的深入理解

    這篇文章主要介紹了java String的深入理解的相關(guān)資料,希望通過(guò)本文大家能理解String的用法,需要的朋友可以參考下
    2017-09-09
  • Java程序包不存在問(wèn)題的解決辦法

    Java程序包不存在問(wèn)題的解決辦法

    最近工作中遇到個(gè)問(wèn)題,代碼中沒(méi)有報(bào)錯(cuò),啟動(dòng)時(shí)報(bào)錯(cuò),但是程序包不存在,這篇文章主要給大家介紹了關(guān)于Java程序包不存在問(wèn)題的解決辦法,需要的朋友可以參考下
    2022-06-06
  • 淺談Spring解決jar包依賴的bom

    淺談Spring解決jar包依賴的bom

    這篇文章主要介紹了淺談Spring解決jar包依賴的bom,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2017-12-12
  • java如何讀取Excel簡(jiǎn)單模板

    java如何讀取Excel簡(jiǎn)單模板

    這篇文章主要為大家詳細(xì)介紹了java如何讀取Excel簡(jiǎn)單模板,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-10-10
  • Spring boot監(jiān)控Actuator-Admin實(shí)現(xiàn)過(guò)程詳解

    Spring boot監(jiān)控Actuator-Admin實(shí)現(xiàn)過(guò)程詳解

    這篇文章主要介紹了Spring boot監(jiān)控Actuator-Admin實(shí)現(xiàn)過(guò)程詳解,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • springboot簡(jiǎn)單實(shí)現(xiàn)單點(diǎn)登錄的示例代碼

    springboot簡(jiǎn)單實(shí)現(xiàn)單點(diǎn)登錄的示例代碼

    本文主要介紹了springboot簡(jiǎn)單實(shí)現(xiàn)單點(diǎn)登錄的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Java線程Dump分析工具jstack解析及使用場(chǎng)景

    Java線程Dump分析工具jstack解析及使用場(chǎng)景

    這篇文章主要介紹了Java線程Dump分析工具jstack解析及使用場(chǎng)景,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2018-01-01

最新評(píng)論