この例を検討してください。文字列オブジェクトに対するelse if条件チェックは、大きくてぎこちなく見えます。スイフト3:オプションの小切手の状態チェックと組み合わせてオプションの小切手を短縮するにはどうすればよいですか?
class A { var bObject = B() }
class B { var cObject = C() }
class C {
var flag = FALSE
var stringObj: String? = "Hello"
}
var aObject = A()
if aObject.bObject.cObject.flag == TRUE {
//do something
}
else if aObject.bObject.cObject.stringObject != nil && aObject.bObject.cObject.stringObj!.characters.count > 0 && aObject.bObject.cObject.stringObj! == "Hello" {
//do something
}
else {
}
以下のようなものを使用したいと思います。オプションでバインドされた変数が同じ条件チェックで使用されています。しかし、コードは明白な理由でコンパイルされませんでした。
else if let unwrappedOptional = aObject.bObject.cObject.stringObj && unwrappedOptional.characters.count > 0 && unwrappedOptional == "Hello" {
//do something
}
これを処理するより洗練された方法がありますか?
は、 '&&'の代わりにカンマ '、'を使用します。 –