【发布时间】:2017-03-02 11:40:55
【问题描述】:
我可以使用什么函数式编程函数(map、reduce、zip)来替换这个for 循环的功能? (数组有不同的对象,但元素数量相同)
@IBOutlet var imageViews: [UIImageView]!
photoURLs = ["http://...photo1...", "http://...photo2...", "http://...photo3..."]
for (index, photo) in photoURLs.enumerated() {
imageViews[index].setImageFromString(string: photo.urlString)
}
更新:大多数 cmets / 答案都适用于我提出的这个问题的第一个版本。现在,我用我的具体案例对其进行了修改。
关于重复问题:这个问题不涉及合并两个数组,它是指将值从一个数组复制到另一个数组,完全相同的索引,但也可以通过自定义方法将它们放入。
【问题讨论】:
-
@Adolfo - 请发表您的评论作为答案。这是正确的答案!
-
你不是说
array2(又名imageViews)是空的吗?如果您尝试使用空数组下标的结果调用方法,您将有非常糟糕的时间。 -
@Teodor Ciuraru 你能发布你的实际代码而不是伪代码吗?包括你想在你的数组元素上调用的函数
-
@TeodorCiuraru,
imageViews[index]whereimageViews == [](即使不是nil)会导致崩溃,所以你会玩得很糟糕。
标签: swift