Dynamic 使用嵌套函数调用Groovy动态方法

Dynamic 使用嵌套函数调用Groovy动态方法,dynamic,methods,groovy,scripting,invocation,Dynamic,Methods,Groovy,Scripting,Invocation,我需要用嵌套函数调用计算字符串。使用groovy有没有一种简单的方法来实现这一点 编辑:代码变得更加真实。语境是非学术性的;我的函数需要组合和计算json文件中的一组任意字符串和值 JSON文件1将包含如下字符串: biggerThan(岛屿列表,0) smallerThan(岛屿列表,3) 比格尔坦(岛屿列表,1) JSON文件2的值如下 [4,1] [1,2,1] [1,5,6,2,98] [] def a=大于(isList,1) a([4,1]) //->在groovy控制台中返回tru

我需要用嵌套函数调用计算字符串。使用groovy有没有一种简单的方法来实现这一点

编辑:代码变得更加真实。语境是非学术性的;我的函数需要组合和计算json文件中的一组任意字符串和值

JSON文件1将包含如下字符串:

biggerThan(岛屿列表,0)

smallerThan(岛屿列表,3)

比格尔坦(岛屿列表,1)

JSON文件2的值如下

[4,1]

[1,2,1]

[1,5,6,2,98]

[]

def a=大于(isList,1)

a([4,1])


//->在groovy控制台中返回true,因为[4,1]是大小大于1的列表

除非必须使用反射,否则不要使用反射。就你而言,我认为你不必这么做。请提供一个更大的背景!可以使用
Eval
或解析
str
,这取决于这一切可能采取的形式。如果你能提供一个更大的图景,以及所有这些是否只是学术练习,或者如果你必须处理来自远程来源的此类呼叫列表,这会有所帮助。但是你的示例即使不在评估中也不起作用。在
groovyConsole
中准备好作为简单Groovy代码使用的示例,然后从
Eval
调用它。看看这个:只是澄清了示例和上下文。谢谢大家的意见
  def biggerThan= {func, val->
        {v->return func(v) && (v.size() > val)}
}


def isList ={n->
        return n instanceof List
}