Come posso cercare dinamicamente il valore della proprietà di un oggetto per nome in Scala 2.10.x?Scala: Come accedere a una proprietà di classe dinamicamente per nome?
E.g. Data la classe (che non può essere una classe caso):
class Row(val click: Boolean,
val date: String,
val time: String)
voglio fare qualcosa di simile:
val fields = List("click", "date", "time")
val row = new Row(click=true, date="2015-01-01", time="12:00:00")
fields.foreach(f => println(row.getProperty(f))) // how to do this?
È necessario utilizzare la riflessione. http://docs.scala-lang.org/overviews/reflection/overview.html – lmm
possibile duplicato di [Iterazione semplice sui campi della classe case] (http://stackoverflow.com/questions/23128433/simple-iteration-over- case-class-fields) –
è possibile controllare la mia risposta qui per ottenere questo in fase di compilazione vs utilizzando il riflesso di runtime: http://stackoverflow.com/a/28420822/1331769 –