Swift:forEach和forIn循环的实例方法之间的区别

Swift 3提供了一种使用ForEach迭代for循环的新方法。 它的工作方式与in loop相似,但是两者之间存在一些基本差异。

我尝试在Employee对象的函数中同时运行两种实例方法。 下面是操场的快照。

如果通过上面的示例看到的话,如果您尝试访问并遍历数组的每个元素,则两者之间绝对没有区别。

差异1:您不能使用break或Continue语句在forEach循环中退出闭包的当前调用,但是您可以在forIn循环中执行相同的操作。

附件快照如下:

差异2:使用return语句ForEach循环仅针对闭包中的当前调用退出,而ForIn循环也退出所有后续后续调用。

附件快照如下:

您可以从我的GitHub存储库https://github.com/creative-rd/SwiftNuggets/tree/master/Swift_ForEachvsForIn.playground下载已删除的游乐场。

保持冷静,编码吧!

参考:https://developer.apple.com/documentation/swift/array/1689783-foreach