JAVA/04_연산자

6.논리연산자 - 2진논리 / 10진논리

Y_____527 2021. 1. 12. 21:18
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
//*
package ex03.operator;
 
//<최단산쉬관논삼대콤>
public class Ex05_Operator {
    public static void main(String[] args) {
    //6)논리연산자 
        //6-1)2진 논리=> 결과: 값
        int x = 7;
        int y = 4;
        System.out.println(x&y); //AND
        System.out.println(x|y); //OR
        System.out.println(x^y); //XOR
 
    
        System.out.println("--------------------------");
    
    
        //6-2)10진 논리=> 결과: 참/거짓 
        int x1 = 10, y1 = 20, z1 = 30;
        boolean flag = false;
        boolean flag1 = false;
        boolean flag2 = false;
        boolean flag3 = false;
 
        //AND연산
        flag = (x1>y1) && (y1>z1); //&&(and)연산은 앞에것이 '거짓'이면 뒤는 수행하지 않는다 -> 여러개를 비교할 때는 거짓경우를 앞쪽에 배치해서 성능저하를 막는다 
        flag1 = (x1<y1) && (y1<z1); //=>true && true 
        System.out.println("(x1>y1) && (y1>z1) = " + flag);
        System.out.println("(x1<y1) && (y1<z1) = " + flag1);
    
        System.out.println();
 
        //OR연산 
        flag2 = (x1>y1) || (y1>z1); //=>false || false
        flag3 = (x1<y1) || (y1<z1); //||(or)연산은 앞에것이 '참'이면 뒤는 수행하지 않는다 -> 여러개를 비교할 때는 참경우를 앞쪽에 배치해서 성능저하를 막는다 
        System.out.println("(x1>y1) || (y1>z1) = " + flag2);
        System.out.println("(x1<y1) || (y1<z1) = " + flag3);
    
    }
}
//*/
 
cs

4
7
3
--------------------------
(x1>y1) && (y1>z1) = false
(x1<y1) && (y1<z1) = true

(x1>y1) || (y1>z1) = false
(x1<y1) || (y1<z1) = true


cf)자바는 false, true0,1로 대체되지 않는다

->0, 0.0, null 이 아닌 모든 값들은 true()이다

  0을 제외한 모든것은 '참'이다.
  -10, 'a', "kbs", 100, 12.34,...
   !(-10) --> false
   !(0) --> true

 

& 2 AND && 10 AND
| 2 OR || 10 OR
^ 2 XOR ->2진만 존재  
! 10 NOT ->10진만 존재  

->거짓은 0 / 참은 1 의미

 

ex) int x = 7; int y = 4;

    println(7&4);

            (x&y);


  • 2진 논리 => 결과: 값

  • 10진 논리 => 결과: 참/거짓

AND연산: &&(and)연산은 앞에것이 '거짓'이면 뒤는 수행하지 않는다 

             -> 여러개를 비교할 때는 거짓경우를 앞쪽에 배치해서 성능저하를 막는다 

 

OR연산: ||(or)연산은 앞에것이 '참'이면 뒤는 수행하지 않는다 

           -> 여러개를 비교할 때는 참경우를 앞쪽에 배치해서 성능저하를 막는다