Какой более элегантный способ проверить нулевое значение в следующем сценарии?

Я использую Groovy. Какой более элегантный способ сделать следующее?

if (!token) {
    token = this.getToken(key, callback)

    if(!token) {
      return params = null
    }

}

Поэтому, если токен уже присутствует, когда пользователь входит в этот поток, этот токен следует использовать. Однако, если токена нет, мы должны попытаться сгенерировать его. Сервис, который мы используем для получения токена, не генерирует исключение, если ничего не создано, он просто возвращает ноль. Если токен не был успешно создан (все еще равен нулю), мы хотим установить для параметров значение null.

Есть ли более чистый способ сделать то, что я делаю? Нулевая проверка в нулевой проверке кажется мне безобразной.

1 ответ

Решение

Первая часть может быть переписана с использованием оператора elvis, чтобы исключить первую нулевую проверку:

token = token ?: this.getToken(key, callback)
if (!token) {
   ...
}
Другие вопросы по тегам