我在scala中有如下特征
trait Ingredients
case class Water(temperature: Int, litters: Double) extends Ingredients
我还从一个文件读取字符串:
"Water(temperature=15, litters=50)"
我想知道是否可以通过仅传递String来实例化此类中的对象。
答案 0 :(得分:1)
Twitter的Util-Eval将执行此操作:https://github.com/twitter/util
<head>
<meta charset="UTF-8">
...
</head>
评估的代码需要是Scala代码的完整单元。例如,如果val eval = new Eval
val w = eval[Water]("Water(temperature=15, litters=50)")
在包中,则需要在计算的字符串中导入包,或者需要在构造函数中使用完整的包引用