【问题标题】:What is the difference between Groovy each and forEach?Groovy each 和 forEach 有什么区别?
【发布时间】:2016-06-11 04:26:44
【问题描述】:

我无法在谷歌上找到简单答案的简单问题:Groovy 的 each 和 forEach 循环有什么区别?

我做了一个简单的例子,语法和行为似乎相同:

    [1, 2].each { println it }
    [1, 2].forEach { println it }

两个打印:

1
2

我在 Groovy 语言文档中看到的唯一示例似乎涉及 lambda 和闭包之间的区别,但我无法将其与我尝试过的示例联系起来。

谢谢

【问题讨论】:

    标签: groovy foreach each


    【解决方案1】:

    each()forEach() 之间的第一个区别是each() 是由 Groovy 的 GDK 提供的,而 forEach() 是由 Java 8 提供的(因此它在 Java 的早期版本中不可用。

    另一个区别是 each() 接受 Groovy 闭包,而 forEach() 接受 Consumer。在 Groovy 中,这种差异并不明显,因为 Groovy 透明地coerces 关闭了消费者。

    【讨论】:

    • 我什至没有想到它是 Java 的!谢谢,有道理。
    猜你喜欢
    • 2016-07-20
    • 2013-03-28
    • 2011-09-30
    • 1970-01-01
    • 1970-01-01
    • 2018-11-12
    • 2012-06-11
    • 1970-01-01
    相关资源
    最近更新 更多