0

我正在使用 Groovy。执行以下操作的更优雅的方法是什么?

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

    if(!token) {
      return params = null
    }

}

因此,如果在用户进入此流程时已存在令牌,则应使用该令牌。但是,如果令牌不存在,我们应该尝试生成一个。如果没有创建任何令牌,我们用来获取令牌的服务不会抛出异常,它只是返回 null。如果令牌没有成功创建(仍然为空),我们希望将参数设置为空。

有没有更清洁的方法来做我正在做的事情?空检查中的空检查对我来说似乎很难看。

4

1 回答 1

2

第一部分可以使用 elvis 运算符重写以消除第一个空检查:

token = token ?: this.getToken(key, callback)
if (!token) {
   ...
}
于 2015-03-30T16:47:53.933 回答