Androidミニ講座

エルビス演算子(?:)とは [Kotlin]

更新日:

 

Kotlinは空っぽ(null)が嫌いなプログラミング言語ですので、クラス(プログラミングを作るためのブロックの単位)は、名前をつけて中身を入れないと使うことが出来ません。

 

 

一方で、クラスの型(ブロックの種類)の後ろに「?」をつけることで、どーしても空っぽ(null)が入る場合も許容されています(「nullable」と言ったりします)。

val message: String? = "こんにちは"

 

このときのオブジェクト(message)の中身を、

空っぽでなければ設定されたものを使って、

空っぽの時は他の中身(デフォルトの値)を使いたい

場合があるとします。

 

そのときは、普通はこのように書きますが、

textView.text = if (message != null) message else "さようなら"

 

このように簡略化して書くこともできます。

textView.text = message ?: "さようなら"

 

このときの「?:」を「エルビス演算子(elvis experssion)」といいます。

なぜ「エルビス」と呼ぶのかはよくわかりませんが、Kotlinの公式では以下のような説明になっています。

https://kotlinlang.org/docs/reference/null-safety.html

If the expression to the left of ?: is not null, the elvis operator returns it, otherwise it returns the expression to the right. Note that the right-hand side expression is evaluated only if the left-hand side is null.

(もし式の左辺(エルビス演算子(?:)の左側)が空っぽ(null)でなければ、エルビス演算子は左辺の値(例ではmessage(=こんにちは))を返し、そうでなければ右辺を返す。右辺は左辺が空っぽ(null)の場合でなければ評価されない)

 

みんプロへのお問い合わせはこちらよりお気軽にお寄せ下さい

「みんなのプログラミング  by Telulu LLC(みんプロ)」について

会社概要

みんプロ最新トピックス

かなり長い代表者プロフィール

みんプロにかける想い

みんプロに頂いたお客様の声

サービス・料金体系

作成アプリ実績

みんプロ公式Facebook

みんプロ公式LINE@(登録者限定無料小冊子プレゼント!)

公式ブログで随時情報発信中!!

きーぼーのつぶやき

用語

Android

  • この記事を書いた人
北川 博之 (みんなのプログラミング by Telulu LLC 代表)

北川 博之(みんなのプログラミング by Telulu LLC 代表)

大阪府生まれ。京都大学経済学部経済学科卒業。 2000年より、日本生命保険、ニッセイアセットマネジメント、パトナム・インベストメンツ(米国)で、日本株トレーダー・アナリスト、経営企画、システム開発等の業務に従事。主に日本株の売買執行・投資分析、経営計画の策定、海外投資家向け日本株営業、社内トレーディングシステム及び経理システムの開発等を行う。 2016年、合同会社てるる設立。スマホアプリプログラマーとして「新感覚脳トレアプリ・記憶戦隊オボエルンジャー」「Meiso-一番シンプルなマインドフルネス瞑想」「ご当地的鉄道アプリ・関西鉄道駅検定(京阪神編)」など、知育・メンタルヘルス系を中心に5タイトル・計10本のAndroid・iOSアプリをリリース。 2017年、自身のこれまでの社会人経験・プログラミング経験・子育て経験をを基に、プログラミングを通じて人々の人生を豊かにして、未来に希望の持てる明るい社会の実現に貢献したいとの想いから、ビギナー向けプログラミングひろば「みんなのプログラミング by Telulu LLC」を設立し、プログラミングサポーター活動と心理カウンセリング活動を開始。3児の父。 かなり長めのプロフィールをこちらから https://minpro.net/profile-of-ceo

-Androidミニ講座

Copyright© みんプロ式・初心者向けAndroidスマホアプリ専門プログラミング講座/教室/スクール/塾-大阪府高槻市 , 2018 All Rights Reserved.