Groovy supporta qualsiasi tipo di notazione iteratore annidata?Come si fanno gli iteratori nidificati in groovy?
Nell'esempio seguente, voglio in qualche modo ottenere il valore projectName, che proviene dall'iteratore esterno, nel mio iteratore interno. È possibile senza memorizzare una variabile? Nel mio esempio, ottengo un errore runtuime che "progetto" non si trova
it.myprojects.project.each{
println("Project name: " + it.projectName)
it.myroles.role.each{
Role role = new Role()
role.setName(project.projectName)//how do I get projectName here without storting it in a variable in the outer loop?
}
}
+1 e selezionato per rispondere effettivamente alla domanda che ho chiesto – Derek
Puoi anche specificare la classe del tuo iteratore con nome se il tuo IDE non riesce a capirlo, ad esempio: 'it.myprojects.project.each {Progetto progetto -> .. . A volte mi piace farlo per l'autocompletamento e così via. Probabilmente, questo inquina il tuo codice inutilmente per il beneficio dell'IDE, ma è lì se lo vuoi. –