「Null条件演算子」「エルビス演算子」とは? IT用語になぜエルビス?11個のクールな技術用語とスラング【第2回】

IT業界の技術用語やスラングは独特だ。「Null条件演算子」「エルビス演算子」はどのような演算子を指し、どのような場合に用いることができるのかを解説する。

2024年01月23日 05時00分 公開
[Darcy DeCluteTechTarget]

関連キーワード

プログラマー | プログラミング


 ソフトウェアエンジニアは、IT業界で飛び交う記号や用語、文字の組み合わせに、独特の名前を付けたがるものだ。そうした技術用語とスラング11個のうち、本稿は3つ目と4つ目を紹介する。

用語3.Null条件演算子

 開発者は、「Nullオブジェクト」(存在しないオブジェクト)に対するメソッド(操作)を呼び出すことによる例外「NullPointerException」を回避するために、Null条件演算子(?.)を利用できる。オブジェクトとは、データとメソッドをまとめたものだ。Null条件演算子を使うことで、変数やオブジェクトがnull(何も指していない状態)かどうかをチェック可能だ。

 Null条件演算子は、チェック対象がnullの場合、nullを返す。Nullではない場合は、例外をスロー(呼び出し)せずに、対象のオブジェクトのプロパティを呼び出すかどうかを判断する。下記の例において、オブジェクト「car」が初期化されていない場合、この操作はnullを返す。carがNullオブジェクトではなければ、「goFast()」メソッドを呼び出す。

car?.goFast();

用語4.エルビス演算子

 「三項演算子」は、2つの値を比較し、真ならクエスチョンマークの後にある1つ目の値を返し、偽であればその次にある2つ目の値を返す。

 プログラミング言語「Java」で書かれた以下のサンプルプログラムを見てみよう。1行目で変数「result」に代入する値は、乱数を生成するメソッド「Math.random()」で生み出した数値が0より小さいかどうかによって異なる。このときエルビス演算子を使い、乱数が0より小さければ「Elvis」、0以上であれば「Presley」をresultに代入する。2行目は標準出力に文字列を出力するメソッド「System.out.print」により、乱数の数値に応じて「The random number is Elvis」または「The random number is Presley」という文字列を出力するという流れだ。

var result = (Math.random() < 0) ? "Elvis" : "Presley";
System.out.print("The random number is " + result);
// 乱数が0より小さければ「Elvis」、0以上であれば「Presley」と出力する

 三項演算子のうち、条件が真の場合の値を省略したものを「エルビス演算子」(?:)と呼ぶ。つまり次の例のように、最初のクエスチョンマーク後の値は空白になる。この例は、プログラミング言語「Kotlin」を用いている。

var result = (Math.random() < 0) ? : "I'm all shook up";
// 乱数が0以上であれば「I'm all shook up」(注)を代入する

※注:エルビス・プレスリー氏の楽曲「All Shook Up」に登場するフレーズ。

 エルビス演算子と呼ばれるのは、エルビス演算子を90度回転させると、エルビス・プレスリー氏の前髪と目のように見えるからだ。プログラミング言語「C#」では、「?.」の組み合わせをエルビス演算子と呼ぶことがある。


 次回は、5つ目と6つ目の用語を紹介する。

TechTarget発 エンジニア虎の巻

米国TechTargetの豊富な記事の中から、開発のノウハウや技術知識など、ITエンジニアの問題解決に役立つ情報を厳選してお届けします。

Copyright © ITmedia, Inc. All Rights Reserved.

隴�スー騾ケツ€郢晏ク厥。郢ァ�、郢晏現�ス郢晢スシ郢昜サ」�ス

技術文書・技術解説 アイティメディア広告企画(2025年04-06月クラウドネイティブ特集)

クラウドネイティブインフラ導入戦略ガイド

企業のデジタル化、クラウド化の動きが加速する中で、ネットワークやアジャイルの必要性が改めて関心を集めている。本稿では、クラウドネイティブアプリケーションの採用に当たってIT意思決定者が考慮すべき事項を解説する。

技術文書・技術解説 アイティメディア広告企画(2025年04-06月クラウドネイティブ特集)

クラウドネイティブアーキテクチャ導入戦略ガイド

クラウドネイティブアーキテクチャは、ビジネスにとっての未来と目されている。本稿ではDevOpsとマイクロサービスベース技術の影響、ソフトウェア開発のためのコンテナにおけるセキュリティの重要性、クラウドネイティブアプリケーション開発のためのMicrosoft Azureについて取り上げる。

プレミアムコンテンツ アイティメディア広告企画(2025年04-06月クラウドネイティブ特集)

“危ないコンテナ”の条件は? VMとどう使い分ける? コンテナ丸分かりガイド

アプリケーションを稼働させる手段として普及した「コンテナ」。仮想マシンとは何が違い、どのように使い分ければよいのか。コンテナを安全に運用するために注意すべきこととは。コンテナ活用のヒントを紹介する。

技術文書・技術解説 アイティメディア広告企画(2025年04-06月クラウドネイティブ特集)

「クラウドネイティブ開発」の基本と未来

クラウドネイティブなアプリケーションを構築することで、クラウドサービスのメリットを最大限に生かすことができる。クラウドネイティブ開発の基本と、開発に役立つツールがどのように進化しているのか、説明する。

技術文書・技術解説 アイティメディア広告企画(2025年04-06月クラウドネイティブ特集)

「Kubernetesクラスタ」運用の基礎知識をおさらい ツールのセキュリティ比較も

Kubernetesクラスタ管理の基本原則は何か。クラスタ管理ツール「Rancher」「OpenShift」「Tanzu」が採用しているセキュリティ対策とは。運用管理の基礎知識をおさらいする。

From Informa TechTarget

いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは

いまさら聞けない「仮想デスクトップ」と「VDI」の違いとは
遠隔のクライアント端末から、サーバにあるデスクトップ環境を利用できる仕組みである仮想デスクトップ(仮想PC画面)は便利だが、仕組みが複雑だ。仮想デスクトップの仕組みを基礎から確認しよう。

ITmedia マーケティング新着記事

news017.png

「サイト内検索」&「ライブチャット」売れ筋TOP5(2025年5月)
今週は、サイト内検索ツールとライブチャットの国内売れ筋TOP5をそれぞれ紹介します。

news027.png

「ECプラットフォーム」売れ筋TOP10(2025年5月)
今週は、ECプラットフォーム製品(ECサイト構築ツール)の国内売れ筋TOP10を紹介します。

news023.png

「パーソナライゼーション」&「A/Bテスト」ツール売れ筋TOP5(2025年5月)
今週は、パーソナライゼーション製品と「A/Bテスト」ツールの国内売れ筋各TOP5を紹介し...