在Kotlin中,是否可以将在数据类主体中声明的属性包含在默认的toString()
结果中?
data class A(val b:Int = 0) {
val c: Int = 0
}
println(A())
打印:A(b=0)
期望:A(b=0, c=0)
答案 0 :(得分:5)
不在生成的toString
中,只会在主构造函数中声明属性(如docs中所述)。但是,如果您愿意,可以自己覆盖toString
:
data class A(val b:Int = 0) {
val c: Int = 0
override fun toString(): String {
return "A(b=$b, c=$c)"
}
}