我有一个非常简单的代码片段,我在其中尝试使用 groovy 的 collect() 方法返回一个对象列表。但由于某种原因,我无法让它发挥作用。在我的日志中,我看到正在检索正确的信息,即:
[{phoneNumber=012345678, name=testing}]'
但我得到一个
cast exception : Cannot cast object:
[{phoneNumber=012345678, name=testing}]'
Could not find matching constructor for: java.util.Iterator(java.util.LinkedHashMap)**
这是我的代码
Iterator<Resource> children = null
Iterator<Resource> serviceList = null
while(serviceList.hasNext()){
Resource child = serviceList.next()
children = child.collect{[
phoneNumber : child.adaptTo(ValueMap.class).get("phoneNumber", ""),
name : child.adaptTo(ValueMap.class).get("name", "")
]}
}
我还尝试将孩子设置为字符串和资源,但无济于事。任何想法,我已经在这个小编辑上敲了几个小时。