Java
Kotlin
初心者

Kotlin学習メモ(開発に役立つ特徴)

More than 1 year has passed since last update.

主な変数の定義

valとvar

  • val→再代入で不可
  • var→再代入可能

val a: String = "foo"
a = "bar" // エラーになる
var b: String = "foo"
b = "bar" // エラーにならない

出来るだけvalを使い、必要な場合のみvarを使うのがベターらしい


nullable

nullを代入できる変数できない変数は、別の型として区別される。
例えば、String型であれば最後に?をつけてString?型として宣言しない限り、
nullを代入することはできません。

val a: String = null // エラーになる
val b: String? = null // エラーにならない

このように、意図しないnullの代入はコンパイル時にエラーとなるため、
ぬるぽを防ぐ効果があります。


値を返すif式

Kotlinのifはif文としてだけでなくif式としても使える為、
値を返すことが出来ます。
このため簡潔に書ける場面が多くて便利です。

例(Javaだとこうなる)

String a;
if(b) {
  a = "foo";
} else {
  a = "bar";
}

例(Kotlinならこのように書ける)

val a = if(b) "foo" else "bar"

名前付き引数、デフォルト引数

Kotlinでは、引数に名前をつけたり、デフォルト値を与えることができるため、
オーバーロード(多重定義、引数や戻り値が異なる同一名称のメソッドを複数定義すること)
を使わずに済む。

// middleNameにはデフォルト値を設定
fun fullName(firstName: String, middleName: String = "", lastName: String)

// 必要な引数のみ指定して渡すことができる
val name = fullName(firstName = "Jun", lastName = "Ikeda")