在Kotlin的toString()中包含在data类的主体中声明的属性
在Kotlin中,是否有可能在数据类的主体中声明的属性包含在默认的toString()
结果中?
data class A(val b:Int = 0) { val c: Int = 0 } println(A())
打印: A(b=0)
期望: A(b=0, c=0)
不在生成的toString
,只有在主构造函数中声明的属性(如文档中所述)。 但是,如果您想要:您可以始终自行覆盖toString
:
data class A(val b:Int = 0) { val c: Int = 0 override fun toString(): String { return "A(b=$b, c=$c)" } }