1. 부울 논리

Java에서는 표현식을 작성할 수 없습니다 18 < age <65. 이는 잘못된 구문이며 프로그램이 컴파일되지 않습니다.

그러나 다음과 같이 작성할 수 있습니다.

(18 < age) AND (age < 65)

물론 이라는 단어 대신 논리 연산자 가AND 있을 것입니다 . 이제 그들에 대해 더 자세히 이야기하겠습니다.

ANDJava에는 (&&), OR(||) 및 NOT(!)의 세 가지 논리 연산자가 있습니다 .

좋은 소식은 괄호를 사용하여 복잡한 논리식을 구성 할 수 있다는 것입니다 .

나쁜 소식은 Java 개발자가 , 및 라는 단어 대신 C 언어 의 표기법을 사용하기로 결정했다는 것입니다 .andornot

화면을 보십시오:

논리 연산자 기대 현실
AND (∧) and &&
OR (∨) or ||
NOT (¬) not !

다음은 Java에서 논리 연산자를 사용하는 몇 가지 예입니다.

표현 해석 설명
(0 < a) && (a < 100)
(0 < a) and (a < 100)
(0 < a) and (a < 100)
(!a) && (!b)
(not a) and (not b)
(NOT a) AND (NOT b)
!(!a || !b)
not((not a) or (not b))
NOT((NOT a) OR (NOT b))

2. 비교 연산자와 부울 변수 사용 예

논리식을 쓸 수 있는 곳이면 어디든지 논리 변수를 쓸 수 있습니다.

예:

암호 설명
int age = 35;
if (age >= 18 && age <= 65)
   System.out.println("You can work");
나이 값이 ~ 사이 18이면 65"일할 수 있습니다"라는 문구가 표시됩니다.
int age = 35;
boolean isYoung = (age < 18);
if (!isYoung && age <= 65)
   System.out.println("You can work");
변수를 만들고 isYoung식의 첫 번째 부분을 변수로 옮겼습니다. age >= 18우리 는 단순히 age < 18.
int age = 35;
boolean isYoung = (age < 18);
boolean isOld = (age > 65);
if (!isYoung && !isOld)
   System.out.println("You can work");
우리는 isOld 변수를 만들고 식의 두 번째 부분을 이 변수로 옮겼습니다. 또한 age <= 65. age > 65_

이 세 가지 예는 동일합니다. if두 번째 예에서만 표현식의 일부를 명령문에서 별도의 부울 변수( )로 옮겼습니다 isYoung. 세 번째 예에서는 식의 두 번째 부분을 두 번째 변수( isOld)로 옮겼습니다.


3. 논리연산

논리 연산을 간단히 살펴보겠습니다.

연산자 AND접속사&& 라고도 합니다 .

표현 결과
true && true
true
true && false
false
false && true
false
false && false
false

즉, 식의 결과는 true식을 구성하는 두 값이 모두 인 경우에만 입니다 true. 그렇지 않으면 항상 입니다 false.

연산자 OR분리|| 라고도 합니다 .

표현 결과
true || true
true
true || false
true
false || true
true
false || false
false

즉, true식의 적어도 하나의 항이 이면 식의 결과는 항상 입니다 true. 둘 다 이면 false결과는 입니다 false.

연산자 NOT논리적 역수! 라고도 합니다 .

표현 결과
!true
false
!false
true

연산자가 true로 변경되거나 false그 반대로 변경됩니다.

유용한 표현:

표현 결과
m && !m
false
m || !m
true
!(a && b)
!a || !b
!(a || b)
!a && !b