ich nach einem Weg suchen einen Swift Bool
prägnant in einem einzigen if
Aussage, zu bewerten, wenn die Bool
die Eigenschaft eines optionalen Objekt ist:auswerten Bool Eigenschaft optional Objekt in if-Anweisung
var objectWithBool: ClassWithBool?
// ...
if let obj = objectWithBool {
if obj.bool {
// bool == true
} else {
// bool == false
}
} else {
// objectWithBool == nil
}
Gibt es sind diese if
Anweisungen zu kombinieren? In Objective-C dies leicht geschehen könnte, als ein nil
Objekt im selben Ausdruck ausgewertet werden:
if (objectWithBool.bool) {
// bool == true
} else {
// bool == false || objectWithBool == nil
}
Ich würde nicht sagen, dass es *“ zwingt das optionale Bool zur Auswertung "*. 'objectWithBool? .bool' kann' true', 'false' oder' nil' sein ('== Optional .None'), und der Vergleich' == true' ergibt nur im ersten Fall 'true'. –
@MartinR Stimmt, ich war da etwas übereilt. Ich habe die Erklärung ein wenig erweitert - hoffentlich macht es jetzt mehr Sinn. – Stuart