Sök…


Anmärkningar

Elvis-operatören utvärderar baserat på Groovy-Sannhet om tillståndsdelen.

Standardform vs Elvis-form

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

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

Lägg märke till att formatet "elvis" utelämnar det "sanna" uttrycket eftersom det ursprungliga jämförelsevärdet ska användas i det "sanna" fallet. Om name är Groovy true kommer det att returneras som värdet på uttrycket.

Användning (med villkor) vid uppdrag

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

Här är if-villkoret (i (parentheses) ) något mer komplex än bara testa för existens / Groovy-Sannhet.



Modified text is an extract of the original Stack Overflow Documentation
Licensierat under CC BY-SA 3.0
Inte anslutet till Stack Overflow