list.stream().forEach()有什么好处,java list.foreach
00-1010概述区别首先,它们的功能都是遍历数组的每个元素,执行参数的accept()方法,只是实现方式不同。在某些特定情况下,执行会有不同的结果。
在大多数情况下,两者会产生相同的结果,但我们会看到一些微妙的差异。
首先,创建一个迭代列表:
ListString list=arrays . aslist( A , B , C , D );最直接的方法是使用增强的for循环:
for(String s : list ){//something }如果要用函数式Java,也可以用forEach()。我们可以在片场直接这样做:
consumer string consumer=s-{ system . out :3360 println };list.forEach(消费者);或者,我们可以在集合的流上调用forEach():
list.stream()。forEach(消费者);两个版本都将遍历列表并打印所有元素:
号一个
在这个简单的例子中,我们使用的forEach()没有区别。
00-1010list.foreach()使用增强的for循环
默认void forEach(消费者?super T action){ objects . require nonnull(action);for(T T : this){ action . accept(T);} }list.stream()。forEach():它首先把集合转换成流,然后在集合的流上迭代。
在遍历过程中删除时,forEach可能会很快失败,而stream()。在遍历数组之前,forEach()不会引发异常。
public class delete difference { public static void main(String[]args){ ListString list=arrays . aslist( A , B , C , D );尝试{ list . foreach(item-{ system . out . println(item));list . remove(0);});} catch(Exception e){ e . printstacktrace();} list.stream()。forEach(item-{ system . out . println(item));list . remove(0);});}}关于list.forEach()和list.stream()的区别本文到此为止。java中的forEach()。有关list.forEach()和list.stream()之间差异的更多信息。forEach(),请搜索热门IT以前的文章或继续浏览下面的相关文章。我希望你以后能更多地支持流行音乐!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。