我不确定何时需要使用spread-dot运算符.如果我有一个列表,如:
def animals = ['ant', 'buffalo', 'canary', 'dog']
Run Code Online (Sandbox Code Playgroud)
因为这两个animals和列表的成员都有一个size()方法,那么为了在列表的元素(而不是列表本身)上调用该方法,我需要使用:
animals*.size()
Run Code Online (Sandbox Code Playgroud)
而不是:
animals.size()
Run Code Online (Sandbox Code Playgroud)
但是,请考虑以下表达式,该表达式返回String类上可用的方法名称列表
String.metaClass.methods.name
Run Code Online (Sandbox Code Playgroud)
Groovy如何知道(不使用spread-dot运算符)我希望name从返回的列表的每个元素中检索属性String.metaClass.methods,而不是列表本身?在这种情况下是否有一套规则可供使用,例如:
谢谢,唐
groovy ×1