2016-11-17 62 views
0

我正在学习三元运算符,现在我明白了它的大部分内容,但是希望看看这是否可行。三元运算符没有错误的选项

正常三元组:(条件)? (result true):(结果为false);

问题是如何用一个真正的零件写一个没有错误;

(condition)? (结果为真):; 或 (条件)? (结果为真); 或 不可能

回答

0

这只是没有意义,因为表达式必须代表具体的价值。

的if/else子句,因为他们没有表达你不能使用:

print(if (value > 0) { "yes" } else { "no" });

但是你可以使用三元运算符为 “内联” 的评价:

print(value > 0 ? "yes" : "no");

假设什么如果条件评估为false并且没有“结果”,则会发生 - 编译器应该如何知道要打印什么?

+0

如果没有代码,它会抛出错误还是只是跳出来。我试图看看它是否可以使用相同的只是if语句,或者这是一种具体的做法,只要别的只有 – user3476870

+0

一般来说,使用三元表达式被认为是一种糟糕的编程风格 - 有时,它使代码更易于阅读,但通常将结果存储在专用变量中要好得多,因为它使您有机会使用变量名称描述您所评估的内容。 – RedXIII