Java简化了语法

时间:2011-04-28 20:49:29

标签: java

在Java中检查以下条件的最简洁方法是什么

int m, n;

要检查的条件是m或n是否为负数,但两者都不应为负数。我正在寻找简洁而简单的语法

4 个答案:

答案 0 :(得分:15)

(m < 0) ^ (n < 0)

请注意,在此上下文中,^逻辑XOR运算符(是的,我的意思是“逻辑”,与“按位”不同)。

答案 1 :(得分:12)

(m ^ n) < 0

更多的填充物可以做出适当的长度答案。

答案 2 :(得分:2)

我会去:

(m < 0) != (n < 0)
对于!=

^boolean的操作相同,但我认为它更容易理解且更常用。

答案 3 :(得分:1)

基本上你的测试应该是 - 符号位(最高位)应该是不同的。

这是用java表示的测试;

if ( (x & Integer.MIN_VALUE) != (y & Integer.MIN_VALUE) )
    ...