当前位置: 首页 > 知识库问答 >
问题:

Kotlin 中的 “!!” 运算符是什么意思?[重复]

符懿轩
2023-03-14

我正在阅读谷歌Android版的指南,他们有下面的片段。

<代码>是什么!! do in < code > userdao . save(response . body()!!)?

private fun refreshUser(userId: String) {
   // Runs in a background thread.
   executor.execute {
       // Check if user data was fetched recently.
       val userExists = userDao.hasUser(FRESH_TIMEOUT)
       if (!userExists) {
           // Refreshes the data.
           val response = webservice.getUser(userId).execute()

           // Check for errors here.

           // Updates the database. The LiveData object automatically
           // refreshes, so we don't need to do anything else here.
           userDao.save(response.body()!!)
       }
   }
}

共有1个答案

丌官飞章
2023-03-14

这用于将表达式转换为非空,如果结果为空,则抛出一个<code>KotlinNullPointerException</code>。因此,在这个用法中,它只保存响应的主体不为空,否则将抛出异常

请参阅此处了解更多信息。

 类似资料:
  • 问题内容: PHP中的“ =&” /“&=”运算符是什么意思?在哪里可以阅读有关它们的信息? 搜索Google没有帮助。 问题答案: 的缩写,是按位与运算符。 分配$ a作为对$ b 的引用。

  • 问题内容: 除了标准,,和运营商; 但什么是这些均值(,,,)? 又如何操作? in返回正常的余数模量,但是仅当,为什么会这样?怎么办? 又如何操作?它有什么作用? 问题答案: :求幂 :异或(按位) :模数 :除以积分结果(舍弃余数)

  • 问题内容: 我尝试使用Google搜索和堆栈溢出进行搜索,但未显示任何结果。我已经在开源库代码中看到了这一点: ”| =”()是什么意思? 问题答案: 的读取方式与相同。 是相同的 按位或运算符在哪里。 这里引用了所有运算符。 之所以使用按位运算符,是因为这些常量经常使int能够携带标志。 如果你查看这些常数,你会发现它们具有两个幂: 因此,你可以使用按位或来添加标志 所以 只是意味着我们添加了一

  • 本文向大家介绍双问号(??)运算符在PHP中是什么意思?,包括了双问号(??)运算符在PHP中是什么意思?的使用技巧和注意事项,需要的朋友参考一下 PHP 7添加了新的运算符双问号(??)运算符。在PHP 7中,双问号(??)运算符称为Null合并运算符。 如果它存在且不为NULL,则返回其第一个操作数;否则返回第一个操作数。否则,返回其第二个操作数。从左到右评估。Null合并运算符也可以链形式使

  • VS2015预览版中有了C#6.0,我们有了一个新的操作符,