我是一个新手,正在学习Kotlin。我认为下面的代码应该打印true,但实际上打印了false。我不知道为什么这个代码会显示“假”。有人能帮我吗?
true
false
fun Boolean.and(it: Boolean): Boolean = true fun main() { val b = true.and(false) println(b) }
字符串我正在学习Kotlin,我想知道Boolean类型的扩展函数逻辑。
Boolean
qij5mzcb1#
不希望输出false的原因是您对Boolean.and(…)的定义实际上是在隐藏an already existing fun,然后使用它来代替您的定义。使用不同的名称并获得所需的结果:
Boolean.and(…)
fun
fun Boolean.logicalAnd(it: Boolean): Boolean = true fun main() { val b = true.logicalAnd(false) println(b) }
字符串输出:true
1条答案
按热度按时间qij5mzcb1#
不希望输出
false
的原因是您对Boolean.and(…)
的定义实际上是在隐藏an already existingfun
,然后使用它来代替您的定义。使用不同的名称并获得所需的结果:
字符串
输出:
true