Что вам нужно сделать, это прочитать об опциях в Swift.
Разработчик Apple
Tutorialpoint
Вот несколько хороших ссылок для чтения. Есть 2 основных способа достичь желаемого.
if let brand = GymBrand.brandForName(name:self.gym.brand) ,
let imageName = brand.logoImageName {
//brand is never nil here
//brand.logoImageName is never nil here
} else {
}
То, что мы делаем здесь, мы предполагаем, что GymBrand.brandForName(name:self.gym.brand)
может быть необязательным, что означает, что он может содержать нулевые значения. Используя if, давайте удостоверимся, что внутри блока if значение бренда никогда не равно нулю.
Но, допустим, мы хотим использовать его не внутри блока, а в любом месте функции. Тогда мы можем использовать guard
.
guard let brand = GymBrand.brandForName(name:self.gym.brand) ,let imageName = brand.logoImageName else {
//brand is nil here
//brand.logoImageName is nil here
}