Я новичок в Swift и работаю над переносом нашей кодовой базы Objective-C в Swift.Я с трудом нахожу хороший способ сделать условное построение с использованием OR и вызовов методов для опциональных объектов.
Скажем, у меня есть 2 объекта 'ojb1' и 'obj2'
ВObjective-C я могу написать:
return [obj1 booleanMethod] || [obj2 booleanMethod]
это вернет true, если какой-либо из двух объектов не nil и его метод возвращает true.
в Swift мне нужно:
if let obj1 = obj1, obj1.booleanMethod() {
return true
} else if let obj2 = obj2, obj2.booleanMethod() {
return true
}
return false
или
return ((obj1 != nil && obj1!.booleanMethod()) || (obj2 != nil && obj2!.booleanMethod())
есть ли лучший / более чистый / короткий способ сделать это?
спасибо