Kotlin で Null チェックを実装する
-
Kotlin で条件付きステートメントを使用して
Null
チェックを実装する -
Kotlin で安全な呼び出しを使用して
Null
チェックを実装する -
Kotlin で Elvis オペレーターを使用して
Null
チェックを実装する
いくつかのプリミティブタイプは null
を受け入れず、エラーをスローします。null
参照でエラーが発生すると、アプリケーションが失敗したり、システムがクラッシュしたりする可能性があります。したがって、プログラムを実行する前に、null
参照を確認することが重要です。
Kotlin を使用すると、さまざまな方法で null
をチェックできます。この記事では、Kotlin で null
をチェックし、NullPointerException
エラーを防ぐ方法を説明します。
Kotlin で条件付きステートメントを使用して Null
チェックを実装する
Kotlin で null
をチェックする最も簡単な方法は、条件付きステートメントを使用することです。ここでは、条件演算子 ==
または ==
を使用して、それに応じて条件ステートメントを実行できます。
==
の代わりに ===
を使用し、!=
の代わりに!==
を使用することもできます。構造的同等性 x == null
は、とにかく参照的同等性 x === null
に変換されます。したがって、==
と ===
のどちらを使用しても大きな違いはありません。
これは、Kotlin での null
チェックの条件付きステートメントの使用を示す例です。
fun main() {
val x: String? = "Android"
if (x != null && x.length > 0) {
print("This is not null, its length is: ${x.length}")
} else {
print("This is a null string!")
}
}
出力:
例のデモを確認するには、ここをクリックをクリックしてください。
ここで、値を null
に変更すると、他の出力が得られます。
fun main() {
val x: String? = null
if (x != null && x.length > 0) {
print("This is not null, its length is: ${x.length}")
} else {
print("This is a null string!")
}
}
出力:
例のデモを確認するには、ここをクリックをクリックしてください。
条件付きステートメントは、変数が val
キーワードを使用して宣言されている場合にのみ機能します。val
キーワードは単語を不変にします。
var
変数を使用する場合、null
参照をチェックした後、変数の値が変わる可能性があります。
Kotlin で安全な呼び出しを使用して Null
チェックを実装する
安全な呼び出しは、Kotlin の null
チェックの null 可能なプロパティにアクセスするためのもう 1つのオプションです。セーフコール演算子 ?.
を使用できます式の結果を確認します。
式の結果に基づいて、さらにステートメントを実行できます。
これが例です。
fun main() {
val v = "Android"
val x: String? = null
println(v?.length)
println(x?.length)
}
出力:
例のデモを確認するには、ここをクリックをクリックしてください。
安全な呼び出しは、チェーンの作成に特に役立ちます。たとえば、次のように書くことができます。
a?.b?.c?.d
上記の例では、a
が null
でない場合、b
に移動します。b
が null
でない場合は c
に移動し、c
が null
でない場合は d
に移動します。
コンパイラが null
値を見つけると、実行を停止して null
を返します。
let
関数で安全な呼び出しを使用して、Kotlin の Null
を処理する
通常、リストの値の 1つが null
の場合、コンパイラーは null
を返します。ただし、let
関数を安全な呼び出しと組み合わせて、リストの null
以外の値に対してのみ機能させることができます。
例:
fun main() {
val myList: List<String?> = listOf("David", "Virat", "Steve", null)
for (i in myList) {
i?.let { println(it) } // prints only non-null values
}
}
出力:
例のデモを確認するには、ここをクリックをクリックしてください。
Kotlin で Elvis オペレーターを使用して Null
チェックを実装する
Kotlin の null
チェックのもう 1つの優れたオプションは、Elvis 演算子 ?:
を使用することです。参照で null
値が見つかった場合は、非 null
またはデフォルト値を返します。
Elvis 演算子の左側と右側の 2つの式があります。左の式の値が null
でない場合、演算子は値を返しますが、左の式が null
の場合、Elvis 演算子は右側の式の値を返します。
ここで重要なのは、Elvis オペレーターは、左側の式が null
の場合にのみ右側の式を実行するということです。
例:
fun main(args: Array<String>) {
val i: String? = null
val j: String = i ?: "Welcome! This is Kotlin Programming."
// This print statement uses the Elvis operator
println(i ?: j)
}
出力:
例のデモを確認するには、ここをクリックをクリックしてください。
Kailash Vaviya is a freelance writer who started writing in 2019 and has never stopped since then as he fell in love with it. He has a soft corner for technology and likes to read, learn, and write about it. His content is focused on providing information to help build a brand presence and gain engagement.
LinkedIn