Swift には次のような switch ステートメントがあります。
switch tuple {
case (let someObject, let current, nil):
return true
// Other cases...
}
タプルは type(SomeObject?, SomeObject, SomeObject?)
であり、私が英語で言っているのは、最初の 2 つの要素が nil でなく、3 番目 (Optional)がnilである場合に一致するということです。
someObject
Xcode 7 は、バインディングとを使用しなかったのでcurrent
、アンダースコアに置き換える必要があることを教えてくれます。_
しかし、タプルの最初の要素をアンダースコアに置き換えた場合、コンパイラが値を無視することを意味するため、最初の要素が nil の場合にも一致しませんか? 最初の要素が nil の場合は別のケースがあります。
記録として、私のコードは期待どおりに機能しているように見えますが、確認したいのですが、これに関するドキュメントはどこにもありません。