2012-05-13 16 views
-3

是否有安卓/ Java编程类似的结构,因为在PHP:Android的逻辑,如果别的..运营商

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

有时代码更易于阅读的方式比与无尽的if..else条款, 所以如果Java/Android不会提供类似的东西,我会感到惊讶吗?

+0

发表评论:对不起,我通过在线文档的许多页面挖掘,但没有找到。如果我能找到它,我当然不会在这里问过,但当然你们​​不可能知道这一点。希望这篇文章能够用于其他人,因为答案是针对我的。谢谢你的提议(这样做可能会阻止我以更低的价格来惩罚我)。 – richey

回答

2

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

+0

哦..酷8-)我没有想到,认为它以前没有工作。现在再试一次,谢谢! – richey

+0

请注意,''做这个'''可以例如* not *是对void方法的调用。三元运算符*不是*语法糖,用于“if ... else ...”。 – aioobe

2

首先,一些重要术语:

  • 声明是如何做的指令,如System.out.println("hello");Thread.sleep(1000);

  • 表达式,例如x + yfoo() - bar()评估值。

您需要了解这些条款并将它们区分开来。

条件控制结构if (a) { b } else { c }陈述

三元运算符a ? b : c表达(其,正如在PHP的计算结果为b如果a评估为真,并且c其它)。

1

在Java中,还存在对if-then-else声明的简写:请参阅Conditional Operators一章以更好地理解。

更清晰,为@aioobe建议:虽然它是在特定情况下被认为是速记的if-then-else的结构,? :没有一个说法,但三元条件运算三元操作

+2

*在Java中,还存在if-then-else语句的简写形式* - 您是否指三元a? b:c'算符? – aioobe

+0

是的,因为发布的链接显示它。 – rekaszeru

+0

* [...] if-then-else语句的简写[...] *,'? :'构造不是一个声明,所以你可能想修改你的措辞。 – aioobe