Есть ли способ использовать значения параметров по умолчанию с закрытием в Groovy?Значение по умолчанию для параметров закрытия в Groovy
Это то, что я пытался до сих пор:
class Persona {
String name
Persona(String name) {
this.name = name
}
String salute(String salute = "Hola") {
salute + ' ' + this.name
}
}
Persona.metaClass.salute2 = {
String salute = "Hola" ->
salute + ' ' + name
}
p = new Persona('john')
print p.salute()
print p.salute2()
, который дает мне следующий результат:
Hola johnnull john
Похоже, что призыв к salute2()
игнорирует значение по умолчанию салют "Hola"
.
Вы правы, groovy 1.6.0 отлично работает! – opensas