Hit*_*pta 2 intellij-idea kotlin
我正在努力应对一个我不明白其含义的警告。请帮助我理解并解决这个问题。然而,它建议使用我不想使用的带标签的退货,因为它对我来说看起来有点丑陋。还有其他办法吗?
让我们采用一个带有 lambda 参数的函数,例如let
:
user?.let { it.name }
Run Code Online (Sandbox Code Playgroud)
您可以使用属性引用而不是 lambda 执行相同的操作:
user?.let(User::name)
Run Code Online (Sandbox Code Playgroud)
显然 - 由于这个 IntelliJ 检查已经到位 - 意外地将两者结合起来并在大括号内使用属性引用而不是其中之一是一个常见的错误,如下所示:
user?.let { User::name }
Run Code Online (Sandbox Code Playgroud)
...或者像这样:
user?.let { user::name }
Run Code Online (Sandbox Code Playgroud)
这将导致将该属性引用作为返回值而不是您可能期望的名称。
归档时间: |
|
查看次数: |
513 次 |
最近记录: |