250x250
Notice
Recent Posts
Recent Comments
관리 메뉴

탁월함은 어떻게 나오는가?

전위연사자와 후위연산자, 숏컷(ShortCircuit) 본문

[Snow-ball]프로그래밍(컴퓨터)/java

전위연사자와 후위연산자, 숏컷(ShortCircuit)

Snow-ball 2020. 12. 16. 12:47
반응형

 

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
50
51
52
53
package third;
 
public class ThirdShortCircuit {
    public static void main(String[] args) {
        int num1 = 3, num2 = 7;
        System.out.printf("num1 = %d, num2 = %d\n", num1, num2);
 
        // 후위 연산자(맨 마지막에 실행)
        System.out.println("num1++ = " + num1++);
        System.out.println("num1 = " + num1);
 
        // 전위 연산자(가장 먼저 실행)
        System.out.println("++num2 = " + (++num2));
        System.out.println("num2 = " + num2);
 
        if((num1 % 4 == 0|| (++num1 % 5 == 0)) {
            System.out.println("통과! num1 = " + num1);
        } else {
            System.out.println("불통 num1 = " + num1);
        }
 
        if((num2 % 100 == 0&& (++num2 % 9 == 0)) {
            System.out.println("통과 num2 = " + num2);
        } else {
            System.out.println("불통 num2 = " + num2);
        }
 
        //어째서 요상한 결과가 나온 것일까 ?
        //OR 연산의 특징을 생각해보자!
        //하나라도 참이면? 참
        //만약 거짓을 발견하면? 연결시키는 뒤의 조건을 확인해야함
        //그러나 먼저 참을 발견하면? 이미 참이므로 뒤를 안봄         //숏컷의 기능
 
        //AND연산의 특징을 생각해보자!
        //하나라도 거짓이 있으면? 거짓
        //만약 참을 발견하면? 뒤의 조건을 확인해야함
        //그러나 먼저 거짓을 발견하면? 이미 거짓이므로 뒤를 안 봄
 
        //결론:
        //케이스: A가 1000번, B가 50번 정도 나타난다.
        //OR 연산자의 경우 ( 기호 : || ) - 전체 횟수 1200번 가정
        //하나라도 참이 있으면 참
        //if(B || A) - 쓸대없이 1150번이나 A를 추가로 검사해야함
        //if(A || B) - 쓸대없는 연산 200번 B를 검사해야함
        //상대적으로 잘 걸리는 녀석을 전면에 배치한다.
 
        //AND 연산자의 경우 - 전체 횟수 1200번 가정
        //하나라도 거짓이 있으면 거짓
        //if(A && B) - 쓸대없이 1000번을 추가 검사해야함
        //if(B && A) - 쓸대없이 50번을 추가 검사해야함
        //상대적으로 잘 안걸리는 녀석을 전면에 배치하다
    }
}
cs

 

 

 

 

 

 

인테리어소품 베타존 : 네이버쇼핑 스마트스토어

나를 꾸미다 - 인테리어소품 베타존

smartstore.naver.com

 

반응형

'[Snow-ball]프로그래밍(컴퓨터) > java' 카테고리의 다른 글

switch(스위치)문 설명과 예제  (0) 2020.12.16
논리연산자 OR와 AND의 특징  (0) 2020.12.16
if문  (0) 2020.12.16
쉬프트 연산자  (0) 2020.12.16
비트연산자 AND,OR,XOR,NOT연산자  (0) 2020.12.16
Comments