我有一系列的饮料配料,并且想要删除与该饮料无关的配料,这是我的代码,但是我不知道如何从数组中除去配料标准。
我只能在索引路径处删除,并且如果我们添加更多的浇头等,这可能会更改,因此似乎不准确吗?
for toppings in self.toppings {
if self.selectedDrink.name == "Tea" {
if toppings.limit == "C" {
self.toppings.remove(at: toppings)
}
}
}
本质上,如果用户选择“茶”,它会寻找咖啡的浇头,然后我需要删除那些对“C”属性做出响应的浇头,但我看不出怎么做?
谢谢您的帮助!
最佳答案
您可以使用for
循环进行就地删除,但这会很棘手,因为您需要迭代回去以避免干扰索引。
一种更简单的方法是过滤数组,然后将其分配回toppings
属性,如下所示:
toppings = toppings.filter {$0.limit != "C"}