본문 바로가기

코딩공부일지/수업 review

[Java] 연산자

Part1. 연산자

1. 연산자: 연산을 수행하는 기호

산술연산자 +, -, *, /, %, <<, >> 사칙연산, 나머지 연산
비교연산자 >, <, >=, <=, ==, != 크고 작음, 같고 다름 비교
boolean반환
논리연산자 && || ! & | ^ ~  
대입연산자 = 우변 값을 좌변에 저장 (오->왼)
기타 intanceof 형변환 연산자, 삼항연산자

2. 연산자 결합규칙

1) 산술 > 비교 > 논리> 대입(=)
2) 단항 > 이항 > 삼항
3) 단항연산자, 대입연산자 제외 모든 연산 진행방향은 오->왼

3. 증감연산자 (++, --)

증가연산자(++) 피연산자 값 +1
감소연산자(--) 피연산자 값 -1

*증감연산자는 일반 산술변환에 의한 자동 형변환 x
전위형: 값 참조 전 증가 ( j = ++i;)
후위형: 값 참조 후 증가 (j=i++;)

 


4. 비교 연산자 (>=, <=는 띄어쓰기 or 순서바꿀시시 오류남!)
1) 대소비교연산자

> 좌변이 클 시 true
>= 좌변이 크거나 같을 시 true
< 우변이 클 시 true
<= dn변이 크거나 같을 시 true

2) 등가비교연산자

== 좌항과 우항의 값이 같을 시 true
!= 좌항과 우항의 값이 같지 않을 시 true



5. 논리연산자 ( &&, ||) ==> 비교연산자를 논리로 (and, or) 연결 
- and 연산자: && (Ampersand)
좌항과 우항의 값 모두 true 시 true반환
- or연산자: || (Pipeline)
좌항과 우항 중 하나라도 true일 시 true 반환
1) i는 a보다 크고 b보다 작다: a < i && i < b
2) i는 a이상 b 이하이다: a<= i && i <=b
3) i는 2의 배수 또는 3의 배수이다 : i%2==0 || i%3==0
4) i는 2 또는 3의 배수이지만, 6의 배수는 아니다 : ( i%2==0 || i%3==0 ) && ( i%6 !=0 )
5) char ch는 '0'~'9' 이다: '0' < = ch && < = '9'
6) 문자 ch 는 소문자 
'a' <= ch && ch <= 'z' (**피연산자가 char타입이므로 int로 자동형변환되어 계산)
7) 문자 ch 는 대문자
'A' <= ch && ch <= 'Z'  (**피연산자가 char타입이므로 int로 자동형변환되어 계산)

6. 논리부정연산자 ( !)
- 피연산자의 boolean 값을 반대로 바꿈 (true <-> false)

 

boolean home = true;
        home = !home;
        System.out.println(play); //false

 

 

 


7. 조건연산자 (삼항연산자)

조건식 ? 참일 때 : 거짓일 때