有没有办法在Kotlin做这样的事情?
mapOf(
"key1" to var1,
"key2" to var2,
if(var3 > 5) "key3" to var3
)
Run Code Online (Sandbox Code Playgroud)
或者唯一的方法是在创建地图后添加密钥"key3"?我只想在满足某些条件的情况下将项目添加到地图中.
在Kotlin中增加可空Int的最简单,最可读的方法是什么?除此之外还有其他方法吗?
var myInt: Int? = 3
myInt = if(myInt!=null) myInt+1 else null
Run Code Online (Sandbox Code Playgroud)
如果myInt是简单变量,那么这很好,但是当myInt是一个更长的表达式时,它可以长得很长.
在我的遗留代码中我有这个:
java.lang.Math.min(a, b)
Run Code Online (Sandbox Code Playgroud)
我想将其替换为 Kotlin 等效项,但我有点困惑应该使用哪一个。我找到了这两个:
kotlin.math.min(a,b)
kotlin.comparisons.minOf(a,b)
Run Code Online (Sandbox Code Playgroud)
正如我注意到的,他们两个都在内部调用Math.min. 他们之间有什么我想念的区别吗?其中之一是未来使用的首选吗?