按位或 | ,按位异或^
(本篇博文,较基础。有需要的看看,没需要的,不必在这浪费时间)
概念的介绍,请移步 java按位与,按位或,按位异或的逻辑判断 有详细介绍,很不错。
下面是做的延展性测试实验:
@Test public void test4() { if(judge1()|judge2()) { System.out.println("按位或 | 运算 \n if() is true\n"); }else{ System.out.println("按位或 | 运算 \n if() is false.\n"); } if(judge1()^judge2()) { System.out.println("按位异或 ^ 运算\n if() is true\n"); return; } System.out.println("按位异或 ^ 运算\n if() is false.\n"); }
辅助方法:
private boolean judge1() { System.out.println("run judge1(). Judge is false"); return true; } private boolean judge2() { System.out.println("run judge2(). Judge is false"); return true; }
运行结果:
run judge1(). Judge is true run judge2(). Judge is true 按位或 | 运算 if() is true run judge1(). Judge is true run judge2(). Judge is true 按位异或 ^ 运算 if() is false.
划重点:
^是异或:在逻辑判断中,当运算对象都是true或者都是false时,结果为false;当两者都不相同时,结果才为true。
这个知识点,可用在一直性检查上。相同为true,不同则为false.