在Java中使用'=?'比较两个值

时间:2012-01-02 11:36:12

标签: java if-statement arraylist

如何在不使用IF的情况下比较两个值。我知道可以使用= ?或类似的东西。例如,我们比较两个arraylists ct的大小。为此,我想使用类似于:

的代码
boolean answ = ? c.size() = t.size();

7 个答案:

答案 0 :(得分:6)

尝试boolean answ = c.size() == t.size();

三元运算符?用于获取两个答案中的一个 - 如果您只需要一个布尔答案,则不需要它。

答案 1 :(得分:4)

如果需要使用?你必须写:

boolean answ = ( c.size() == t.size() ? true : false );

但这比编写

要长得多
boolean answ = ( c.size() == t.size()  );

答案 2 :(得分:2)

这应该有效:

boolean answ = c.size() == t.size();

你可能记得的是if else构造的简短:

return c.size() == t.size() ? true : false;

答案 3 :(得分:2)

此代码将在不使用if的情况下进行比较:

boolean answ s= (c.size()==t.size()) ? true : false;

答案 4 :(得分:1)

你的意思是三元运算符?

result = expr1 ? expr2 : expr3;

如果expr1评估为true,则result的结果为expr2,否则为expr3的结果。所以:

boolean answ = c.size() == t.size() ? true : false;

答案 5 :(得分:1)

它被称为三元或条件运算符:

http://en.wikipedia.org/wiki/Ternary_operation

答案 6 :(得分:0)

要比较您通常使用==而不是=的值,除非您要比较非原始值(如果您在适当的情况下覆盖它,则必须使用equals方法班级)。

单个=用于表示,而不是用于测试相等性。