Мне было интересно, есть ли простой способ установить конкретную переменную в массиве структурных элементов?
Пример: Что у меня есть:
var memberArray = [Member]()
struct Member {
var memberID : String!
var memberName : String!
init(memberID : String! = nil,
memberName : String! = nil) {
self.memberID = memberID
self.memberName = memberName
}
}
Итак, как бы я установил, например, memberName конкретного Участника, просто зная, что это memberID?
Спасибо за помощь! :-)



Что ж, вам нужно найти индекс нужной записи, а затем использовать этот индекс для изменения указанного поля этой записи:
if let index = arr.index(where: { $0.memberId == "123" })
{
arr[index].memberName = "Fred"
}
Несвязано, но никогда и никогда объявляет свойства как IUO, которые инициализируются в методе
init. Если предполагается, что свойства являются необязательными, объявите их как обычные необязательные (?), в противном случае необязательные.