【问题标题】:What is the "and" and "or" Operator in Kotlin? [closed]Kotlin 中的“and”和“or”运算符是什么? [关闭]
【发布时间】:2019-04-10 16:12:36
【问题描述】:

我们都知道,在 Java 中,我们使用 && 运算符来表示“and”和 ||运算符或“或”。但是对于 Kotlin,这是行不通的。当我尝试一个简单的程序时,我注意到 Kotlin 中的 && 运算符的行为类似于 ||使用 IntelliJ 的 Java 运算符,我不知道为什么。

while(day!=1 && month != 1 && year!= 0) {
    ...
    ...
}

我在调试程序的时候,看到当日=1,月=8,年=1947时,跳出循环。

我修改了代码,再次调试,这次是在day = 31,month = 1,year = 1947时跳出来的。

那么 Kotlin 中的“与”和“或”运算符究竟是什么?

【问题讨论】:

  • "当日 = 1,月 = 8,年 = 1947 时,它跳出循环。" false AND true AND true 是 false
  • “我们都知道”,当 day = 1 时,该循环在 Java 中也会跳过,因为您编写的循环仅在 day != 1 时进行迭代。 --- “那么 Kotlin 中的“and”和“or”运算符到底是什么?” 它们与 Java 中的相同,如果您在网络上搜索 @ 就会知道987654321@,这将引导您到Kotlin documentation"&&||! - 逻辑“与”、“或”、“非”运算符"

标签: java android intellij-idea kotlin


【解决方案1】:

要在 day = 1、month = 8、year = 1947 时不跳出循环,条件必须是,例如:

while(day==1 && month != 1 && year!= 0) {
    ...
    ...
}

您的初始条件是 = 如果“day”不是 1 并且“month”不是 1 并且“year”不是 0,那么只有继续。所以它按预期工作,因为参数“day”实际上是 1,并且跳出了循环。您应该阅读否定和逻辑门,它将帮助您更好地理解编程,因为逻辑门在大约 100 年里一直完全相同。

【讨论】:

    【解决方案2】:

    Kotlin 中有两个逻辑运算符:

     || :true 如果任一布尔表达式为真

    &&:如果所有布尔表达式都为真,则为真

    请注意,或和和是支持中缀符号的函数 . 逻辑运算符用于控制流,例如 if 表达式、when 表达式和循环。

    更多信息here

    【讨论】:

    • and 运算符和 or 运算符进行按位运算。
    猜你喜欢
    • 2011-07-02
    • 1970-01-01
    • 2021-11-08
    • 2011-01-02
    • 2021-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-03
    相关资源
    最近更新 更多