0
У меня возник вопрос, почему использование массива в массиве строк не работает.собрать можно def queues = [] as String []?
Это работает нормально
String[][] serversAndQueues = [["server1","queue"],["server1","queue1"],["server2","queue2"]]
serversAndQueues.groupBy { it[ 0 ] }.each { server, value ->
def queues = []
value.collect(queues){
it[1]
}
println "$server => $queues"
}
OUTPUT
server1 => [queue, queue1]
server2 => [queue2]
но если я пытаюсь определить очереди в виде массива строк очереди DEF = [], как String [], исключение составляет
String[][] serversAndQueues = [["server1","queue"],["server1","queue1"],["server2","queue2"]]
serversAndQueues.groupBy { it[ 0 ] }.each { server, value ->
def queues = [] as String[]
value.collect(queues){
it[1]
}
println "$server => $queues"
}
ВЫВОД
Exception thrown
groovy.lang.MissingMethodException: No signature of method: java.util.ArrayList.collect() is applicable for argument types: ([Ljava.lang.String;, ConsoleScript40$_run_closure2_closure3) values: [[], [email protected]]
Possible solutions: collect(), collect(), collect(groovy.lang.Closure), collect(java.util.Collection, groovy.lang.Closure), collect(java.util.Collection, groovy.lang.Closure), collect(groovy.lang.Closure)
at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:55)
at org.codehaus.groovy.runtime.callsite.PojoMetaClassSite.call(PojoMetaClassSite.java:46)
..
...
был входящий в комплект поставки ответа какой-либо помощи? –