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());

}

迭代器是一種模式,它可以使得對於序列類型的數據結構的遍歷行爲與被遍歷的對象分離,即我們無需關心該序列的底層結構是什麼樣子的。只要拿到這個對象,使用迭代器就可以遍歷這個對象的內部.
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章