groovy: безопасно найти ключ на карте и вернуть его значение

Я хочу найти определенный ключ в данной карте. Если ключ найден, я хочу получить значение этого ключа с карты.

Это то, что мне удалось до сих пор:

def mymap = [name:"Gromit", likes:"cheese", id:1234]

def x = mymap.find{ it.key == "likes" }

if(x)
    println x.value

Это работает, вывод "сыр" как и ожидалось. Отлично, но я нене хочу делатьx.value в конце, и я нене хочу делатьif(x), Я хочу, чтобы x как-то напрямую содержал значение.

Я могу'получить значение непосредственно в х, как это:

def mymap = [name:"Gromit", likes:"cheese", id:1234]

def x = mymap.find{ it.key == "likesZZZ" }.value

println x

Поскольку в этом случае замыкание поиска является нулевым, это приводит к исключению нулевого указателя. Конечно, приведенный выше фрагмент кода работает, когдаit.key == "likes", но я не уверен, что всегда найду целевой ключ на карте.

Что такоеGroovier» и безопасный способ сделать это на карте:

Проверьте, есть ли у карты заданный ключ,И если так, получите значение этого ключа

Ответы на вопрос(4)

Ваш ответ на вопрос