【问题标题】:Android logical if .. else operatorsAndroid 逻辑 if .. else 运算符
【发布时间】:2012-05-13 16:38:25
【问题描述】:

Android / Java 编程中是否存在与 PHP 类似的结构:

Condition ? [if true, do this] : [else do this]

有时代码比无穷无尽的 if..else 子句更容易阅读, 所以如果 Java / Android 不提供类似的东西,我会感到惊讶?

【问题讨论】:

  • 发表评论:抱歉,我翻阅了许多在线文档,但没有找到。如果我能找到它,我当然不会在这里问,但是你们当然不会知道。希望这篇文章对其他人有用,因为答案是为我准备的。谢谢你(如果停止用更多的反对票来惩罚我,那就太糟糕了)。

标签: android logical-operators


【解决方案1】:

是的,语法完全一样:Condition ? [if true, do this] : [else do this]

【讨论】:

  • 哦 .. 很酷 8-) 我没想到,以前认为它不起作用。现在再试一次,谢谢!
  • 请注意,"do this" 可以 not 调用 void 方法。三元运算符 notif ... else ... 的语法糖。
【解决方案2】:

首先是一些重要的术语:

  • 语句是操作说明,例如System.out.println("hello");Thread.sleep(1000);

  • 表达式,例如 x + yfoo() - bar() 计算为值。

您需要了解这些术语并将它们分开。

条件控制结构if (a) { b } else { c }是一个语句

三元运算符a ? b : c 是一个表达式(就像在PHP 中,如果a 计算为真,则计算为b,否则计算为c)。

【讨论】:

    【解决方案3】:

    在 Java 中还存在 if-then-else 语句的简写:请查看 Conditional Operators 章节以更好地理解。

    更清楚地说,正如@aioobe 所建议的那样:尽管在特定上下文中它被认为是if-then-else 结构的简写,但? : 不是陈述,而是三元条件运算符三元运算符

    【讨论】:

    • 在 Java 中也存在 if-then-else 语句的简写 -- 你指的是三元 a ? b : c 运算符吗?
    • [...] if-then-else 语句的简写 [...]? : 构造不是语句,因此您可能想要修改你的措辞。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-10-02
    • 2012-07-11
    • 1970-01-01
    • 1970-01-01
    • 2021-05-30
    相关资源
    最近更新 更多