null条件演算子
読み:ぬるじょうけんえんざんし
外語:null-conditional operator
幾つかの
プログラミング言語
に存在する二項演算子で、第一項が
null
でなければ第二項を、nullであればnullまたはそれに類する結果を返す演算子の一般名称。プログラミング言語により呼び方の違いが大きい。
目次
概要
特徴
C#
Perl
Swift
Kotlin
JavaScript(ECMAScript)
Ruby
概要
C/C++
の三項演算子で書くと ( ( x != NULL) ? y : x ) を意味するコードを、より簡単に書くことができる
構文糖
の一種とみなすことができる。
C#、Perl (おそらく6以降)、Swift、Kotlin、JavaScript(ECMAScript 2020以降)、Ruby (2.3.0以降)などのプログラミング言語やスクリプト言語で見られる。
特徴
C#
C#においては、C# 6.0以降でnull条件付きのメンバーアクセスの ?. および ?[] に対応した。
Perl
Perlバージョン6では、null条件付きのメンバーアクセスとして .? が利用できる。?が.の後であることに注意。
Swift
Swiftにおいては、null条件付きのメンバーアクセスとして ?. および ?[] に対応している。
Kotlin
Kotlinにおいては、null条件付きのメンバーアクセスとして ?. および ?[] に対応している。
JavaScript(ECMAScript)
ECMAScript
11th edition (ECMAScript 2020)から、トレンドを輸入する形で「オプショナルチェイニング演算子」の名で導入された。
null条件付きのメンバーアクセスとして ?. が利用でき、. と比してnullableなオブジェクトに対して安全にアクセスできる。オブジェクトがnullまたはundefiendだった場合、.でれば実行エラーとなるが、?.の場合はundefinedを返却する。
Ruby
Rubyにおいては、2.3.0以降でnull条件付きのメンバーアクセスの &. に対応した。
他の言語と違い使用する記号が?ではなく&である。また、ぼっち演算子(lonely operator)という名が付けられている。
再検索