Kotlinでオプショナルチェーン(Optional Chaining)を使う方法
Javaなんかではなかった概念なので新しく覚えよう。
1 2 3 4 5 6 7 8 9 |
var str: String? = null if (str != null) { str.toInt() // nullチェックしてるので実行されない } str!!.toInt() // 落ちる str?.toInt() // 落ちない(toInt()が実行されない |
こんな感じで !!
を使うと、nullが入っている場合に落ちてしまう。
Javaのようにnullチェックをするとif文の中が実行されないので落ちない。
それをkotlinでは 「変数?.メソッド」
の形で書くことで、nullだった場合に後ろに続くメソッドを実行しないという書き方が可能である。(これがOptional Chainingと呼ばれる
nullチェックをする書き方でも問題はないが、kotlinではOptional Chainingが一般的なので積極的に使っていくことにしよう。
もちろんJava的なnullチェックを使ってはいけないわけではないので、可読性など何か理由がある場合は使っていこう。
ディスカッション
コメント一覧
まだ、コメントがありません