case class Keyword(id: Int = 0, words: String)
val my= Keyword(123, "hello")
val fields: Array[Field] = my.getClass.getDeclaredFields
for (i <- fields.indices) {
println(fields(i).getName +":"+ my.productElement(i))
}
ID:123如何在斯卡拉陈列柜类的价值
标题:关键字的标题
它的确定。
def outputCaseClass[A](obj:A){
val fields: Array[Field] = obj.getClass.getDeclaredFields
for (i <- fields.indices) {
println(fields(i).getName +":"+ obj.productElement(i))
}
}
outputCaseClass(my)
这是错的
案例类扩展'product'所以使用该产品迭代器为这里概述:http://stackoverflow.com/a/17827262/1154145 – nattyddubbs
太谢谢你了。但是当我将这些代码放入函数中时,它不起作用。 –
你缺少的是'A'的隐式ClassTag,这将是你的方法工作所必需的。 –