java位运算定义常量

简单说一下位运算

按位与(&)

参加运算的两个数,换算为二进制(0、1)后,进行与运算。只有当相应位上的数都是1时,该位才取1,否则该为为0

按位或(|)

参加运算的两个数,换算为二进制(0、1)后,进行或运算。只要相应位上存在1,那么该位就取1,均不为1,即为0

左移(<<)

参加运算的两个数,换算为二进制(0、1)后,进行左移运算,用来将一个数各二进制位全部向左移动若干位。

开整:

定义常量

public static final int ONE = 1 << 1;
public static final int TWO = 1 << 2;
public static final int THREE = 1 << 3;

public static void main(String[] args) {

//设置类型
int type = ONE|TWO|THREE;
System.out.println(type);
//判断是否是该类型
if ((type&TWO)>0){
...
}
}

这里只提供思路,如果项目中发现场景类似可以使用尝试该方法,有新思路可以一起讨论

猜你喜欢

转载自www.cnblogs.com/liaohailong/p/10955431.html