【发布时间】:2020-11-04 23:10:33
【问题描述】:
下面的代码有更短的版本吗? 此外,当使用“for var”访问时,它不会附加,因为它是“按值传递”。有什么建议吗?
struct Food {
var fruits = [Fruit]()
var category = "summer fruits"
}
struct Fruit {
var name = ""
}
var foods = Food()
let fruit = Fruit()
fruit.name == "banana"
for var food in foods {
if food.category == "summer fruits" {
food.fruits.append(fruit)
}
}
【问题讨论】:
-
好的,我已经编辑了
-
你不能迭代
foods它需要符合Sequence。 -
这不是minimal reproducible example。正如弗兰肯斯坦所说,
for var food in foods会产生编译器错误。var category = String也不会编译。 -
对不起,我拼错了你能再看看吗?
-
你还没有解决真正的问题。您是否尝试过运行此代码?
标签: arrays swift search collections iterable