如果使用逐位运算符或运算符,为什么输出-3?

问题描述 投票:-3回答:1
public class NegativeBitwise {
    public static void main(String[] args) {
        int a, b;
        a = 5;
        b = -8;
        int c = a & b;
        int d = a | b;
        System.out.println("Bitwise and is : " + c);
        // output : 0
        System.out.println("Bitwise or is :" + d);
        // output : -3
    }
}
java binary output bit-manipulation operator-keyword
1个回答
0
投票

这是因为-8|5的正确答案是-3而不是253。您可以使用此site进行验证。

© www.soinside.com 2019 - 2024. All rights reserved.