gpt4 book ai didi

scala - 案例类ToString的通用定制

转载 作者:行者123 更新时间:2023-12-03 00:18:05 25 4
gpt4 key购买 nike

在此链接上:https://stackoverflow.com/a/4055850/82609

它解释了

case class Person(name: String, age: Int) {
override def productPrefix = "person: "
}

// prints "person: (Aaron,28)" instead of "Person(Aaron, 28)"
println(Person("Aaron", 28))

有没有办法做一些事情,比如将案例类与某些特征混合,确实提供了比默认更好的 ToString?

我真的不喜欢不打印字段名称,对于大型案例类,有时很难阅读日志。

是否可以有这样的输出?

Person(
name="Aaron",
age=28
)

最佳答案

重写toString()怎么样?即使在特定特征中(或每次在案例类级别并调用对象函数),您也可以这样做。

trait CustomToString {
override def toString() = "do some reflection magic here"
}

case class Person(name: String, age: Int) extends CustomToString

println(Person("Belä", 222))

关于scala - 案例类ToString的通用定制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17485680/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com