2015年11月1日日曜日

Null-aware operators : x?.m()

Null-aware operators について一つずつ事例を挙げて紹介していきます。


??」「??=」「x?.p」に続き 4 件目は「x?.m()」です。
「x?.m()」といった記載をし、オブジェクト x が null でない場合のみ関数 m() を実行するという意味です。




Knight クラスのオブジェクト piece は null なので、その関数である jump() を実行しようとすると普通は例外が発生してしまいますが、実行の際に「?.」を利用することで例外を回避することができます。


null の参照例外を回避できるというのは絶大で、この記載方法をスタンダードとしていくべきだと思います!
超主観ですが(笑)


ここまで前回の記事のパクリですが(笑)、「x?.p」とはセットで利用するものだと考えます。
オブジェクトのプロパティ参照か、関数実行かの違いですしね。


Null-aware operators についてお伝えしてきましたが、Dart を用いたコーディングでは必須といえる技術になりますので、ぜひ活用していきたいですね!


今回は以上です。

1 件のコメント:

  1. Thanks for sharing, nice article!. Thank you
    Đối với những dịch vụ mà Proship cung cấp tới khách hàng như: vận tải oto, dịch vụ bốc xếp, dịch vụ ship cod, cho thuê kho, chuyển phát nhanh, giao hàng tận nơi, chuyển hàng bằng tàu hỏa vận tải xe máy, thuê xe tải, vận tải container,... luôn nhận được sự ủng hộ lớn từ khách hàng trên cả nước. Proship tự tin cung cấp tới khách hàng dịch vụ uy tín, chất lượng, nhanh chóng và giá cả cạnh tranh nhất thị trường hiện nay.

    返信削除