나미/안드로이드

코틀린으로 앱개발까지.. 11. 데이터 클래스

규남 2023. 12. 11. 17:40
반응형

정말 기초부터 혼자 공부하면서 같이 정리해나가는 정리노트

1. 데이터 클래스

  • data 키워드를 선언하며 자주 사용하는 데이터를 객체로 묶어둔다.
  • 데이터 클래스를 주로 사용하는 대표적인 이유는 특정함수의 응용이 매우 유용하다.
  • 예를들면 toString() 함수, equals() 함수 등..이 있다
package com.example.test

class NonDataClass(var name: String, var age: Int)
data class DataClass(var name: String, var age: Int)

fun main()
{
    var obj1 = NonDataClass("Kim", 20)
    var obj2 = DataClass("Lee", 20)

    /* toString() 함수 사용
     * 각각의 결과값 비교
     * 아래의 결과값을 토대로 data class가 아닌경우는
     * 들어있는 객체 자체를 문자열로, 즉 자료형을 직접 가르킨다
     * 
     * 그러나 data class인 경우에는 
     * 객체 내부의 실제 데이터를 가르킨다.
     * 
     * 따라서 클래스의 데이터 변수들을 모아놓고 사용하기에 매우 유용하다.
     */
    
    println("NonDataClass = ${obj1.toString()}")
    // NonDataClass = com.example.test.NonDataClass@71be98f5
    
    println("DataClass = ${obj2.toString()}")
    // DataClass = DataClass(name=Lee, age=20)
}
728x90
반응형