data class User(val name: String, val age: Int) 頭にdata って付けると、コンパイラが以下のものを自動で作ってくれる。ただしクラス内または継承元に明示的に定義されていれば勝手に生成したりしない。equals()/hashCode()ペア "User(name=John, age=42)"って表示するtoString() 宣言順で...
LogUserData.kt /** * ログイン中のユーザー情報を表示するための情報 */ data class LoginUserData(val userName: String, val emailAddress: String) (2)サインアウトサインアウト処理は、以下のように行います。SignOutActivity.kt // サインアウトボタン buttonSignOut.setOnClickListener { ...
生成されたhashCode()関数のふるまいはequals()関数のものと一致しており、そのため、あるdata objectのすべての実行時インスタンスは、同じハッシュコードを持つ。 data objectのcopyとcomponentN関数は無い data objectとdata class宣言は度々一緒に使用し、いくつか類似点を持つ一方で、いくつかの関...
Databaseの初期化 最後に上で定義したDatabaseをApplicationクラスで初期化します。 classSampleApplication:Application(){overridefunonCreate(){super.onCreate()SampleDatabase.init(this)}} 簡単ですね。これでSampleDatabaseをどこからでも呼び出せるようになりました。 使ってみる それでは準備が整っ...
CustomData : 検証用に用意したクラスです。 open class CustomData(val id: Long, val name: String) RETURNS_DEFAULTS メソッドの戻り値の型がプリミティブの場合はその型の初期値、コレクションはempty、オブジェクトの場合はnullを返します。