2017-07-27 18 views

答えて

9

as?は、safe cast operatorです。

通常、変数をキャストしようとすると失敗すると、ClassCastExceptionが返されます。この演算子を使用すると、代わりにnullが返されます。

これはnullを返す可能性があるので、foo as? Foo式の戻り値の型は実際にはFoo?であることを意味します。


foo as Foo?変数は、その型ではない場合、これは依然として(すなわち、それはFooインスタンスまたはnullない)例外を生成することができ、NULL可能Foo?タイプにfooのキャストです。

関連する問題