有没有什么办法可以在字符串中创建一个scala方法,然后再调用它?例如
val code = "(a: String, b:String) => {a+b}"
我想知道是否有任何方法可以实例化该方法并调用它?
我已经探索过toolbox和twitter util eval,它们都需要我编译和实例化方法
asInstanceOf[(String, String) => Option[Any]]
要做到这一点,我需要知道参数及其类型,我正在寻找方法,我不需要事先了解参数类型。
答案 0 :(得分:0)
看看twitter util eval api
import com.twitter.util.Eval
val func = new Eval().apply[(String, String)=>String]("(a: String, b:String) => a+b")
scala> func("ab", "cd")
res1: String = abcd