如何在JAVA中使用NOT运算符作为整数

B_A*_*Ali -3 java operators logical-operators

如何在JAVA中使用NOT运算符作为整数 在此输入图像描述

当我把NOT运算符(!)它显示一个错误包com.learnJava.first;

public class LogicalOpTable {

    public static void main(String[] args) {
        int p,q;

        System.out.println("P\t Q\t AND\t OR\t XOR\t NOT\n");

        p = 1;
        q = 1;

        System.out.println(p+ "\t " + q + "\t " + (p&q) + "\t " + (p|q) + "\t " + (p^q) + "\t " + !p );

        p = 1;
        q = 0;

        System.out.println(p + "\t " + q + "\t " + (p&q) + "\t " + (p|q) + "\t " + (p^q) + "\t " + !p);

        p = 0;
        q = 1;

        System.out.println(p + "\t " + q + "\t " + (p&q) + "\t " + (p|q) + "\t " + (p^q) + "\t " + !p);

        p = 0;
        q = 0;

        System.out.println(p + "\t " + q + "\t " + (p&q) + "\t " + (p|q) + "\t " + (p^q) + "\t " + !p);


    }

}
Run Code Online (Sandbox Code Playgroud)

And*_*ner 6

您需要使用按位补码运算符~,而不是逻辑补码运算符!.


但是,您的代码似乎有点不匹配:您的类被调用LogicalOpTable,但您使用的是按位运算符,而不是逻辑运算符.

如果您真的想要进行逻辑运算,请使用boolean值而不是ints.

如果你真的想做按位操作,请为你的类命名,这样就不会让人感到困惑;)

  • `int` 没有“不”之类的东西。什么是“不是 123”? (2认同)