所以在java中我们有三进制运算符(?),它有时对简化if-else内联计算的一些值很有用。例如:
myAdapter.setAdapterItems(
textToSearch.length == 0
? noteList
: noteList.sublist(0, length-5)
)我知道在kotlin中的等价物是:
myAdapter.setAdapterItems(
if(textToSearch.length == 0)
noteList
else
noteList.sublist(0, length-5)
)但我只是喜欢Java中的三元运算符,用于简短的表达式条件,以及将值传递给方法时。有没有Kotlin的等价物?
发布于 2016-01-22 06:56:13
在Kotlin中没有三元运算符。
https://kotlinlang.org/docs/reference/control-flow.html
在Kotlin中,如果是一个表达式,即它返回一个值。因此,不存在三元运算符(条件?则: else),因为普通的if在这个角色中工作得很好。
你可以找到更详细的解释here。
https://stackoverflow.com/questions/34935918
复制相似问题