Buscar..


Observaciones

El operador de Elvis evalúa en función de Groovy-Truth de la parte de condición.

Forma estándar vs forma de Elvis

// long form
String sayHello(String name){
    "Hello, ${name ? name : 'stranger'}."
}

// elvis
String sayHello(String name){
    "Hello, ${name ?: 'stranger'}."
}

Observe que el formato "elvis" omite el término "verdadero" porque el valor de comparación original se usará en el caso "verdadero". Si el name es Groovy true , se devolverá como el valor de la expresión.

Uso (con condición) en la asignación

def results = []
(1..4).each{
    def what = (it%2) ? 'odd' :  'even'
    results << what
}
assert results == ['odd', 'even', 'odd', 'even']

Aquí, la condición if (en (parentheses) ) es un poco más compleja que solo probar la existencia / Groovy-Truth.



Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow