Tôi đang tìm kiếm một cách để đánh giá một Swift Bool
ngắn gọn trong một if
tuyên bố duy nhất, khi Bool
là tài sản của một đối tượng không bắt buộc:Đánh giá tài sản của đối tượng không bắt buộc Bool trong câu lệnh if
var objectWithBool: ClassWithBool?
// ...
if let obj = objectWithBool {
if obj.bool {
// bool == true
} else {
// bool == false
}
} else {
// objectWithBool == nil
}
Có cách nào để kết hợp các câu lệnh if
này? Trong Objective-C này có thể dễ dàng được thực hiện, như một đối tượng nil
thể được đánh giá trong cùng một biểu:
if (objectWithBool.bool) {
// bool == true
} else {
// bool == false || objectWithBool == nil
}
Tôi sẽ không nói rằng nó *" buộc Bool tùy chọn được đánh giá "*. 'objectWithBool? .bool' có thể là' true', 'false' hoặc' nil' ('== Tùy chọn. Không ') và so sánh' == true' chỉ tạo ra 'true' chỉ trong trường hợp đầu tiên. –
@MartinR Đúng, tôi hơi vội vã ở đó. Tôi đã mở rộng lời giải thích một chút - hy vọng nó có ý nghĩa hơn bây giờ. – Stuart