def getAllSupperClassFields[T](t : Class[T]): String = {
//将所有获取到的父类属性加进一个数组中
val arrayBuffer = new ArrayBuffer[String]()
var clazz: Class[_ >: T] = t
while (clazz != null) {
val fields: Array[Field] = clazz.getDeclaredFields()
//获取属性名进入Array
val strings: Array[String] = fields.map(x => x.getName)
//将每组数据按照逗号分割
val str: String = strings.addString(new StringBuilder(), ",").toString()
if (str != "") arrayBuffer += str
clazz = clazz.getSuperclass
}
//最终将所有大字符串数据再次按照逗号分割拼接起来
arrayBuffer.addString(new StringBuilder(), ",").toString()
}
有误请指正^__^
scala获取对象全部属性名,包括所有父类属性名,将其拼接成一个大字符串
最新推荐文章于 2022-12-02 14:34:12 发布