【Kotlin入門】クラス・関数内で使えるオブジェクト

Kotlin
スポンサーリンク

こんにちは😀

今回は、その場で作れるローカルなオブジェクトをみてみます。
今その場でプロパティをもつオブジェクトを作りたい、クラス名を定義するまでもない、という場合に使えるオブジェクトです。

main関数の中に定義してみましょう。
3〜6行目がその場で作成したオブジェクトです。
定義したプロパティを変更できるように「var」を指定しています。
使い方は簡単で、「オブジェクト名.プロパティ名」になります。

fun main(args: Array<String>) {

val homework = object { var holiday:String = “夏休み” var homework:String = “自由研究”}

}

println(“${homework.holiday}は、${homework.homework}の宿題があります。”)

実行します。
プロパティで指定した、「holiday」と「homework」が出力されています。
その場でオブジェクト1

プロパティを変更することもできます。
以下のプロパティ「homework」を変更する処理を追加します。

homework.homework = “日記”

println(“${homework.holiday}は、${homework.homework}の宿題があります。”)

実行します。
2つ目の出力が想定通り出ていますね。
その場でオブジェクト2

さらに、プロパティ「holiday」「homework」の両方とも変更する処理を追加してみます。

homework.holiday = “冬休み”
homework.homework = “習字”

println(“${homework.holiday}は、${homework.homework}の宿題があります。”)

実行すると、3つ目の出力がプロパティ2つとも変更されていますね。
その場でオブジェクト3

Intを使って簡単な計算をしてみましょう。
以下は、オブジェクトのプロパティにIntを使用しています。
定数を定義しているので、「Int」を指定しなくても数字と認識してくれています。

val yosan = object { var a = 100000 var b = 200000 }

println((yosan.a + yosan.b).toString() + “円”)

実行すると、数字が計算されて出力されていますね。
その場でオブジェクト4

オブジェクトが必要な場合に、名前を指定して作るほどでもない処理であれば、このような簡単な定義の仕方は便利です。
割と用途は多いように思います。

今回はここまで🤚

では、また次回。

 

【Kotlin入門一覧はこちら】

コメント

タイトルとURLをコピーしました