У меня есть класс модели следующим образом, который находится в библиотеке, написанной в Objective-C. Я потребляю этот класс в своем стремительном проекте. В быстром он становится собственностью типа String!
. Иногда это свойство будет нулевым. Итак, я тестирую нулевую проверку следующим образом:Swift - Проверить нуль необязательной переменной
Vendor.h
@interface Vendor: NSObject {
@property (nonatomic, strong) NSString *firstName;
@property (nonatomic, strong) NSString *lastName;
@property (nonatomic, strong) NSString *middleName;
}
В моем Swift проекта, я проверка всухую проверок для свойства MiddleName, как показано ниже:
if anObject.middleNam != nil { // Here, It throws runtime error: fatal error: Unexpectedly found nil while unwrapping an Optional value
}
Это набрасывает мне следующую ошибку времени выполнения:
fatal error: unexpectedly found nil while unwrapping an Optional value
Если свойства объектива-C выставлены в s wift, как String?
то я бы использовал следующие:
if let middleName = anObject.middleName {
}
Как бы проверить развернутого необязательной переменной.
Заранее спасибо.
Вы можете использовать 'if let' с неявно развернутыми опциями - хотя проверка'! = nil' должна срабатывать с помощью 'middleName', как определяется' anObject'? – Hamish