// &与 // |或 // ^异或 // !非 // &&短路 // ||短路

 1 package com.ibeve.demo;
 2 public class OperateDemo2 {
 3     public static void main(String[] args) {
 4 
 5         int x = 4;
 6         //逻辑运算符用于连接 boolean 类型的表达式。
 7         
 8         //x>3 & x<6 = true & true = true;
 9         /*        
10          true & true = true;
11         true & false = false;
12         false & true = false;
13         false & false = false;
14         
15         &: 只要两边的 boolean 表达式结果,有一个为 false,那么结果就是 false;
16               只有两边都是 true,结果为 true;
17         */
18         /*
19         true | true = true;
20         true | false = true;
21         false | true = true;
22         false | false = false;
23          &: 只要两边的 boolean 表达式结果,有一个为 true,那么结果就是 true;
24              只有两边都为 false,结果为 false;
25          */
26         /*
27         ^:异或;就是和 | 有点不一样,当 true ^ true = false;
28         true ^ true = false;
29         true ^ false = true;
30         false ^ true = true;
31         false ^ false = false;
32          ^: 两边相同结果是 false;
33              两边不同结果是 true;
34          */
35         /*
36          !true = false;
37          !!true = true;
38          */
39         /*
40          & 和 && 的特点:
41          &:无论左边是 true 是 false, 右边都运算。
42          &&:当左边为 false 时,右边不运算。
43         
44          | 和 || 的特点:
45          |:两边都参与运算。
46          ||: 当左边为 true,右边不运算。
47          */
48         
49         
50         // &与
51         // |或
52         // ^异或
53         // !非
54         // &&短路
55         // ||短路
56 
57     }
58 }
原文地址:https://www.cnblogs.com/believeus/p/8952396.html