1. 程式人生 > >java三種遍歷集合的方法

java三種遍歷集合的方法

(1):使用聚合操作

在JDK 8和更高版本中,迭代集合可以通過獲取流並對其執行聚合操作。聚合操作通常與lambda表示式結合使用,使程式設計更具表現力,使用較少的程式碼行。以下程式碼順序遍歷一組形狀並打印出紅色物件:

myShapesCollection.stream()
.filter(e  - > e.getColor()== Color.RED)
.forEach(e  - > System.out.println(e.getName()));
使用此API處理資料有許多不同的方法。例如,您可能需要將a的元素轉換Collection為String物件,並用逗號分隔:
String joined = elements.stream()
    .map(Object :: toString)
    .collect(Collectors.joining(“,”));

也可以總結所有員工的工資:
int total = employees.stream()
.collect(Collectors.summingInt(Employee :: getSalary)));
效能方面在有並行操作的情況下,Stream效率是更高的。但在比較簡單的迭代中stream效率是沒什麼優勢的。
總而言之Stream充分利用了lambda表示式,增強了集合操作,程式碼很簡潔優雅,絕對值得一用。

(2)foreach

這種迭代方式比較簡單,相信大家都知道。這裡就不贅述了。

(3)Iterator

迭代器也是常用的迭代方法之一。具體使用方法如下:

Iterator iterList= list.iterator();//List介面實現了Iterable介面
while(iterList.hasNext()){
String strList=(String)iterList.next();
System.out.println(strList.toString());

}

迭代器是一種模式,它可以使得對於序列型別的資料結構的遍歷行為與被遍歷的物件分離,即我們無需關心該序列的底層結構是什麼樣子的。只要拿到這個物件,使用迭代器就可以遍歷這個物件的內部.

相關推薦

java集合方法

(1):使用聚合操作 在JDK 8和更高版本中,迭代集合可以通過獲取流並對其執行聚合操作。聚合操作通常與lambda表示式結合使用,使程式設計更具表現力,使用較少的程式碼行。以下程式碼順序遍歷一組形狀並打印出紅色物件: myShapesCollection.stream()

java增強型for迴圈(集合方式)

For-Each迴圈         For-Each迴圈也叫增強型的for迴圈,或者叫foreach迴圈。    For-Each迴圈是JDK5.0的新特性(其他新特性比如泛型、自動裝箱等)。    For-Each迴圈的加入簡化了集合的遍歷。 語法如下: fo

List集合方法

++ next string highlight gpo equal 方法 arraylist bject 一、通過叠代來遍歷List集合,可以刪除List集合中的元素。 import java.util.ArrayList; import java.util.Itera

Java中 List的方法

Java List遍歷方法 及其效率對比 package com.zbalpha.test; import java.util.ArrayList; import java.util.Iterator; import java.util.List;

Java中List集合方式效率的比較)

public static void main(String args[]){ compare(); } public static void compare() { List<String> list = new ArrayList

java集合方式以及各自優缺點分析

1、Iterator介面 Iterator是Java集合框架的成員,主要用於遍歷(即迭代訪問)Collection集合中的元素,也稱為迭代器。 提供的三種方法: boolean hasNext():返回集合裡的下一個元素。 Object next():

二叉樹的常見方法方式 Java 實現

讀完本文你將瞭解到: 樹的分類有很多種,但基本都是 二叉樹 的衍生,今天來學習下二叉樹。 什麼是二叉樹 Binary Tree 先來個定義: 二叉樹是有限個節點的集合,這個集合可以是空集,也可以是一個根節點和至多兩個子二叉樹組成的集合,其中一顆樹叫做根的左子樹,另一棵叫做根的右子樹。

Map集合方法

package exercise; import java.util.Collection; import java.util.Date; import java.util.HashMap; import java.util.Iterator; import java.ut

集合方式

叠代器 whl print 循環 下一個 sys 三種 iterator for 1、for循環 代碼實現: for(int i=0;i<list.size();i++){ product p=list.get(i); System.println(p); } 2、叠

談談vector容器的方法

封裝 font pri using != 說明 ace rac 三種 說明:本文僅供學習交流。轉載請標明出處。歡迎轉載! ? ? ? ? ?vector容器是最簡單的順序容器,其用法相似於數組。實際上vector的底層實現

公交車站撿垃圾之二叉樹的方法

info 表示 圖片 com 沒有 inf 不能 image 思考 # 二叉樹的遍歷 今天下午看了二叉樹的三種遍歷方式,雖然能寫出代碼,但是理解可能不太到位,感覺很容易忘,所以想到一個形象的方法,把每個節點當作公交車站,而訪問節點則是在這個公交車站撿垃圾,右子樹和左子樹則

列表裏面序號和值的方法

開始 clas pri border padding span style %s pytho list = [‘html‘, ‘js‘, ‘css‘, ‘python‘] # 方法1 # 遍歷列表方法1:‘ for i in list: print("序號:%s

列表裡面序號和值的方法

list = ['html', 'js', 'css', 'python'] # 方法1 # 遍歷列表方法1:' for i in list: print("序號:%s 值:%s" % (list.index(i) + 1, i)) # 遍歷列表方法2:' # 方法2 for i in ra

字典方法和排序方法

字典遍歷方法挺多,我總結了以下比較常見的三種: 1、用dict.keys()遍歷 用dict.keys()方法會返回一個型別為dict_keys的序列型別,裡面有字典的key,然後遍歷即可 2、有dict.values()遍歷 類似的,會返回字典的所有value值組成的一個序列,型別為d

樹的方法程式碼實現 (資料結構)C語言

樹的三種遍歷方法:前序,中序和後序及其程式碼實現。 在此分別總結先序,中序,後序的結點輸出順序。   先序: 1.訪問根結點     2.訪問左子樹     3.訪問右子樹  中序:1.訪問左子樹      2.訪問

for-forEach-stream方法執行效率比較

想法   在JDK-8中,新添加了很多的方法,比如說現在我所說的forEach,該方法是用於集合遍歷的,其方式相當於傳統的for迴圈遍歷方式,只是與其不同之處就在於採用了lambda表示式,因而在進行迴圈遍歷時程式碼更加的簡介。   但是我們知道,在JDK-8中,除了可以採用forEach來

資料結構之"二叉樹的方法"

1、什麼是二叉樹 定義:有且僅有一個根節點,每個節點只有一個父節點,最多含有兩個子節點,子節點有左右之分。 2、二叉樹的遍歷 二叉樹是一種樹形結構,遍歷就是要讓樹中的節點被且僅被訪問一次,即按一定規律排列成一個線性佇列。二叉樹是一種遞迴定義的結構,包含三個部分:根節點(

list的方法

1.最簡單的for迴圈遍歷        for(int i = 0; i < list.size(); i++){         list.get(i); &nbs

二叉樹方式及通過兩重構二叉樹(java實現)

重構方法參考文章【重構二叉樹(Java實現):https://blog.csdn.net/wangbingcsu/article/details/51372695】 文章目錄 二叉樹類 三種遍歷方式 前序遍歷 中序遍歷 後序遍歷

二叉樹的建立與訪問演算法的設計(方法)

二叉樹的建立與訪問演算法的設計(三種遍歷方法) 1、【問題描述】 從鍵盤輸入二叉樹的元素,建立二叉樹,實現二叉樹的遍歷演算法。 【基本要求】 實現以下基本操作: (1)從鍵盤輸入二叉樹的元素,建立二叉樹。 (2)實現二叉樹的先序遍歷演算法。 2、【問題描述】 從鍵盤輸入二叉樹的元素,