hyeonga_code

Java_20_연산자_논리 연산자 본문

Java

Java_20_연산자_논리 연산자

hyeonga 2023. 9. 18. 11:59
반응형

- Operand_피연산자
    - 연산자의 작업 대상

 - Operator_연산자
    - 어떠한 기능을 수행하는 것
    - 연산자보다 오류의 파악이 중요합니다.
    - 유형
            - 논리 연산자
                - &&_SHort Circuit AND, ||_Short Circuit OR, &_AND, ^_XOR, |_OR, !_NOT
                - 피연산자가 반드시 boolean 이어야 합니다.
                - 연산 결과도 boolean 입니다.
                - 우선순위
                    && >> ||
                    - 같이 사용하는 경우 괄호로 구분하는 것이 좋습니다.
                - OR_|| : 둘 중 하나라도 true 이면 true 를 반환합니다.
                - AND_&& : 모두 true 여야 ture 를 반환합니다.
                    x       y      x||y    x&&y
                  --------------------------------
                   true    true    true    true
                   true    false   true    false
                   false   true    true    false
                   false   false   false   false

'OperatorEx.java'
=====

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
package basic;
//모든 클래스는 패키지 안에 생성합니다.
 
public class OperatorEx3 {
    // 모든 함수_메소드는 클래스 안에 작성합니다.
    
    public static void main(String[] args) {
        // Java의 모든 코드는 함수 안에 작성합니다.
        
        int a = 5;
        int b = 0;
        
        // 논리 
        System.out.println("1) a: " + a + ", b: " + b);
        System.out.println();
        
        boolean result1 = a!=0 || ++b!=0;
        System.out.println("a!=0 || ++b!=0 : " + result1);
        System.out.println("2) a: " + a + ", b: " + b);
        System.out.println();
        
        boolean result2 = a==0 && ++b!=0;
        System.out.println("a==0 && ++b!=0 : " + result2);
        System.out.println("3) a: " + a + ", b: " + b);
        
            /*
                1) a: 5, b: 0
                
                a!=0 || ++b!=0 : true
                    - true || true : true
                2) a: 5, b: 0
                    - b 값이 변하지 않는 이유
                        - 논리 조건앞이 true
                        - OR연산자에서는 뒤 조건의 결과와 상관없이 true 이므로 실행되지 않습니다.
                        - 위치를 변경해서 실행하면 b의 값이 변경됩니다.
                        >> 단축 평가 라고합니다.
                        
                a==0 && ++b!=0 : false
                    - false && true : false
                3) a: 5, b: 0
                    - b 값이 변하지 않는 이유
                        - 논리 조건 앞이 false 
                        - AND 연산자에서 뒤 조건의 결과와 상관없이 false이므로 실행되지 않습니다.
                        >> 단축 평가 라고합니다.
             */
    }
}
cs

 

반응형