Java 8 - forEach 循环示例
Java 8 提供了执行浏览的附加功能和新方法。在某些情况下,这些新概念的性能更高,值得推荐。大多数 Java 8 功能部件都集中在 lambda 表达式以及相关功能部件(如流、方法和接口)上。Java 8 中的另一个特性是 forEach.
forEach() 可以实现为比 for-each 循环更快,在 Java 8 中,接口 iterable 使用最优化的方法来遍历元素,而不是标准的遍历方法。
在本文中,你将学习如何遍历 java.util.List 和 java.util.Map,带有新的循环 forEach 的 java 8.
forEach 和 java.util.Map
此代码显示了浏览 Map:Map在 Java 8 中,您可以浏览 Map 带有 forEach 循环和 lambda.map = new HashMap<>();
map.put(1, A”);
map.put(2, B”);
map.put(3, C”);
map.put(4, D”);
map.put(5, E”);
for (Map.Entryentry : map.entrySet()) {
System.out.println(Key: ” + entry.getKey() + value: ” + entry.getValue());
}
Mapmap = new HashMap<>();
map.put(1, A”);
map.put(2, B”);
map.put(3, C”);
map.put(4, D”);
map.put(5, E”);
items.forEach((k,v)->System.out.println(键:” + k + 值:” + v));
items.forEach((k,v)->{
System.out.println(键:” + k + 值:” + v);
if(D”.equals(v)){
System.out.println(D”);
}
});
forEach 和 java.util.List
此代码示例显示了使用 for:
Listarraylist = new ArrayList<>();
arraylist.add(A”);
arraylist.add(B”);
arraylist.add(C”);
arraylist.add(D”);
arraylist.add(E”);
arraylist.add(F”);
for(String val : arraylist){
System.out.println(val);
}
List arraylist = new ArrayList<>();References:
arraylist.add(AB”);
arraylist.add(BC”);
arraylist.add(CD”);
arraylist.add(DE”);
arraylist.add(EF”);
arraylist.add(FG”);
//lambda
arraylist.forEach(item->System.out.println(项目));
arraylist.forEach(item->{
if(D”.equals(item)){
System.out.println(item);
}
});
//方法引用
arraylist.forEach(System.out::p rintln);
//使用 stream()创建一个过滤器
//它应该显示 CD output
arraylist.stream()
.filter(s->s.contains(CD”))
.forEach(System.out::p rintln);
Javadoc: Java 8 - forEach