boolean b1 = true;
boolean b2 = false;
boolean b3 = true;
피연산자가 모두 true일 때만 true를 리턴한다.
System.out.println(b1 && b2);
/* b1이 true이고 b2가 false이다.
둘 다 true여야 true값을 리턴하지만 하나만 true이므로 false값을 리턴한다. */
피연산자 둘 중에 하나만 true라는 값을 가져도 true를 리턴한다.
System.out.println(b1 || b2);
/* b1이 true이고 b2가 false이다.
하나의 값만 true여도 true이기 때문에 true값을 리턴한다. */
단항 연산자이고 결과를 반대로 리턴한다.
System.out.println(!b1);
/* b1은 true이다.
결과값을 반대로 리턴하므로 false값이 리턴된다. */
피연산자가 하나는 true이고 하나는 false여야 true를 리턴한다.
즉 피연산자의 값이 달라야만 true를 리턴한다.
System.out.println(b1 ^ b2);
/* b1이 true이고 b2가 false이다.
두 값이 달라야 true이므로 true값이 리턴된다. */