如何在不使用IF的情况下比较两个值。我知道可以使用= ?
或类似的东西。例如,我们比较两个arraylists c
和t
的大小。为此,我想使用类似于:
boolean answ = ? c.size() = t.size();
答案 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)
它被称为三元或条件运算符:
答案 6 :(得分:0)
要比较您通常使用==
而不是=
的值,除非您要比较非原始值(如果您在适当的情况下覆盖它,则必须使用equals
方法班级)。
单个=
用于表示,而不是用于测试相等性。