您至少需要将其与0进行比较,并且在概念上这是CPU所做的比较。例如
可以建模为等于,
^因为位必须相同才能返回0
(a ^ b) == 0
如果这是
C你可以删除的,
== 0因为这可以暗示
!(a ^ b)
但在Java中,你不能转换的
int一个
boolean没有至少一些比较。
为了进行比较,您通常会进行减法运算,尽管它可以处理溢出。
(long) a - b > 0 // same as a > b
减法与添加负数相同,负数与〜x + 1相同,因此您可以
(long) a + ~ (long) b + 1 > 0
放下,
+1您可以将其更改为
(long) a + ~ (long) b >= 0 // same as a > b
你可以实现
+一系列的点点滴滴 *** 作与
>>
<<
&
|和
^,但我不会造成上你。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)