본문 바로가기

[TIL]논리 연산자(&&, ||)

인포꿀팁 발행일 : 2020-07-22

오늘 배운 내용은 논리 연산자 Conditional Operators 입니다.

논리 연산자는 이항 연산자로 논리합과 논리곱 연산자로 나뉜다.

여러 연산자를 활용한 예시 문제를 풀어 보았다.

논리 연산자의 가장 중요한 특징은 단축 연산 이다.

//false && anything => false으로 단축연산 

//true || anything => true로 단축연산

이 부분에서 논리곱과 논리합은 앞부분의 값이 true(논리합) false(논리곱) 이 나오면 뒷부분의 연산은 진행하지 않는다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package ex0722;
 
public class OperatorEx16 {
 
    public static void main(String[] args) {
        int a =10, b=5;
        boolean c=true, d;
        
        d=a>&& c;//true && true -> true
        System.out.println(d);
        
        d=a>|| c;// true or ture => true
        System.out.println(d);
        
        d=a<&& c;// false && true -> false
        System.out.println(d);
        
        d=a<|| c;// false && true -> false
        System.out.println(d);
        
        //false && anything => false으로 단축연산 
        //true || anything => true로 단축연산
        //논리곱&&은 앞부분이 false 이면 뒷 부분 연산 하지 않는다.
        //논리합||은 앞부분이 true 이면 뒷 부분 연산 하지 않는다.
        //단축 연산이라고 함
        
        
        /*a=20; b=20;
         * c= ++a > 20 && b++ > 20; 
// ++앞에오면 먼저 계산후 관계 연산 뒤에오면 관계 연산 후 ++ 연산 진행
         * println(a,b,c) = 21,21,false
         * 
         * a=20; b=20;
         * c= a++ >20 && ++b > 20; 
         * println(a,b,c) = 21,20,false
         * */
        
        /*a=20; b=20;
         * c= ++a > 20 || ++b > 20; // 
         * println(a,b,c) = 21,20,true
         * 
         * a=20; b=20;
         * c= a++ >20 || ++b > 20; 
         * println(a,b,c) = 21,21,true
         * */
        
    }
 
}
 
cs

 

 

 

'Language > JAVA' 카테고리의 다른 글

[TIL]배정연산자(+=,-=,*=,/= 등등)  (0) 2020.07.22
[TIL]조건연산자(삼항연산자)  (0) 2020.07.22
[TIL]동등 연산자(==, !=) & 관계 연산자(<, <=, >, >=)  (0) 2020.07.22
[TIL]증감연산자  (0) 2020.07.22
[TIL]이항 연산자  (0) 2020.07.22

댓글