前提知識がいろいろ必要なので整理しながら書きます。
エルビス演算子(elvis演算子)
- 一般的に ?: という文字で使われるが、これがエルビス・プレスリーの顔文字に見えることからそう呼ばれる。
( ?: がリーゼントと2つの目に見える。) - 言語ごとに解釈や挙動が微妙に違うので注意。(三項演算子とエルビス演算子を同じものだと書いているサイトもあるので注意。)
Kotlinでのエルビス演算子
- Kotlinのエルビス演算子は、1項目でNullとの比較を行う。2項目には数値か処理をかく。returnなども使うことがある。
val valueB : String = valueA ?: “default”
- swiftのニルコアレーシングオペレーション(??)は、Kotrinのエルビス演算子を使って実現できる。
Wikipedia
エルビス演算子
Kotlinではエルビス演算子の第一項をnullと比較する。また、第二項に制御式を記述することもできる[9]。よくあるパターンとしてthrow式やreturn式を記述する(val foo = bar() ?: return)。
https://ja.wikipedia.org/wiki/%E3%82%A8%E3%83%AB%E3%83%93%E3%82%B9%E6%BC%94%E7%AE%97%E5%AD%90
Null集合演算子
https://ja.wikipedia.org/wiki/Null%E5%90%88%E4%BD%93%E6%BC%94%E7%AE%97%E5%AD%90