[TIL]논리 연산자(&&, ||)
오늘 배운 내용은 논리 연산자 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>b && c;//true && true -> true
System.out.println(d);
d=a>b || c;// true or ture => true
System.out.println(d);
d=a<b && c;// false && true -> false
System.out.println(d);
d=a<b || 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 |
댓글