로그인 회원가입
모두인포
전체IT경제사회생활스포츠시사여행연애

자바 논리 연산자(Logical Operators)

lmkfox · 2025-06-26 · 조회 0
자바 논리 연산자(Logical Operators)
1. 자바의 논리 연산자 종류 연산자 명칭 설명 예시 && 논리 AND 두 조건이 모두 true일 때만 true (a > 0 && b > 0) ` ` 논리 OR ! 논리 NOT 조건의 반대 값 반환 !(a > 0) & 비트 AND / 논리 AND (모두 평가) 둘 다 true일 때 true, 모두 평가 (a > 0 & b > 0) ` ` 비트 OR / 논리 OR (모두 평가) 둘 중 하나가 true면 true, 모두 평가 ^ 논리 XOR 한 쪽만 true일 때 true (a > 0 ^ b > 0) 2. 주요 논리 연산자 설명 2.1  &&  (논리 AND, short-circuit AND) - 앞 조건이 false이면 뒤 조건은 평가하지 않음 (short-circuit) - 전체 결과는 모든 조건이 참이어야 true int a = 10; int b = 5; if (a > 0 && b > 0) { System.out.println("두 수 모두 양수입니다."); } 2.2  ||  (논리 OR, short-circuit OR) - 앞 조건이 true이면 뒤 조건은 평가하지 않음 (short-circuit) - 전체 결과는 하나라도 참이면 true int age = 15; if (age < 13 || age > 65) { System.out.println("우대 대상입니다."); } 2.3  !  (논리 NOT) - 조건의 참/거짓을 반전 boolean isLogin = false; if (!isLogin) { System.out.println("로그인이 필요합니다."); } 3. 비트 연산과의 차이:  & ,  | 자바에서는 &, | 연산자를 boolean 조건에도 사용할 수 있지만, &&, ||와는 다릅니다. 연산자 short-circuit 여부 사용 예 && 예 조건이 false면 이후 생략 & 아니오 조건이 false라도 이후 평가 // short-circuit AND if (x != 0 && 10 / x > 1) { ... } // 안전 // 일반 AND (&)는 모두 평가 -> 에러 가능 if (x != 0 & 10 / x > 1) { ... } // x가 0이면 예외 발생 4.  ^  (XOR: 배타적 논리합) - 양쪽 피연산자가 서로 다를 때만 true boolean a = true; boolean b = false; System.out.println(a ^ b); // true System.out.println(true ^ true); // false System.out.println(false ^ false); // false 5. 논리 연산자 우선순위 자바에서는 다음과 같은 순서로 연산됩니다. - ! (NOT) - && (AND) - || (OR) 괄호를 사용하여 우선순위를 명확히 하는 것이 좋습니다. boolean result = true || false && false; // &&가 먼저 수행 // 위는 true || (false && false) -> true boolean result2 = !(true && false); // NOT가 먼저 수행 // -> !(false) -> true 6. 논리 연산자와 조건문 활용 예 int age = 25; boolean isStudent = false; if (age >= 18 && !isStudent) { System.out.println("성인 비학생입니다."); } 7. 요약 연산자 설명 특징 && 논리 AND 모두 true일 때만 true ` ` ! 논리 NOT boolean 값을 반대로 & 일반 AND (전체 평가) 성능 손해 및 오류 가능성 있음 ` ` 일반 OR (전체 평가) ^ 논리 XOR (서로 다르면 true) 예외적 상황에서 사용

댓글

아직 댓글이 없습니다.

로그인 후 댓글을 남길 수 있습니다.