【发布时间】:2016-05-08 04:00:13
【问题描述】:
完全公开,这是一个家庭作业问题:
它应该有一个 [Circle] 类型的私有属性。一组圆圈。 该方法应删除任何半径大于 最低要求,小于最高要求。
显然我应该使用removeAtIndex() 来删除不满足循环中确定的条件的数组项。然而,许多人在循环中删除项目之前已经指出,因为我猜是“迭代器/索引不匹配”。
最终我创建了一个空数组并使用.append() 将满足“良好”条件的值推送到filteredCircles 数组,但我不禁觉得这不符合作业的标准。
有没有一种解决方案可以在循环中实际从数组中删除项目?
【问题讨论】:
-
从最后一个索引开始循环,直到到达第一个。删除项目只会影响后面项目的索引。
-
@vacawama 如何在 Swift 中做到这一点?循环语法不允许索引——就像其他语言一样,所以我不知道如何倒数。
-
@vacawama Nm...刚刚了解了
circles.enumerate().reverse()。谢谢!