강의 내용
[1] 증가, 감소, 삼항 연산자
[2] 산술, 대입 연산자
[1] 증가, 감소, 삼항 연산자
증가 연산자
변수의 값을 1씩 증가(++)시키는 단항 연산자
연산자의 위치에 따라 해석의 차이 존재
++a(전위) : a의 값 1 증가 → a의 값 사용(먼저 증가한 다음 사용)
a++(후위) : a의 값 사용 → a의 값 1 증가(먼저 사용한 다음 증가)
a++ == a + 1
감소 연산자
변수의 값을 1씩 감소(--)시키는 단항 연산자
--a(전위) : a의 값 1 감소 → a의 값 사용(먼저 감소한 다음 사용)
a--(후위) : a의 값 사용 → a의 값 1 감소(먼저 사용한 다음 감소)
a-- == a - 1
Q. 증감 연산자 출력문의 결과를 쓰시오.
int x = 10;
(1) System.out.println(--x); // 9(감소 후 출력)
(2) System.out.println(x++); // 9(출력 후 증가) -> 10
(3) System.out.println(x--); // 10(출력 후 감소) -> 9
(4) System.out.println(++x); // 10(증가 후 출력)
(5) System.out.println(x); // 10
public class PrePostOperTest { public static void main(String[] args) { int x = 10; System.out.println(--x); System.out.println(x++); System.out.println(x--); System.out.println(++x); System.out.println(x); } }
삼항 연산자
연산자의 수가 3개인 삼항 연산자
(조건식) ? A : B
조건식이 true(참)인 경우, 결과 값은 A
조건식이 false(거짓)인 경우, 결과 값은 B
예) int a = -5
a < 0 ? -a : a -> a가 0보다 작으면 연산 결과는 -a, 그렇지 않으면 a(절댓값 계산)
a < b ? a : b -> a가 b보다 작으면 연산 결과는 a, 그렇지 않으면 b(둘 중 작은 값 계산)
Q. 삼항 연산자를 이용하여 정수 2개 중 max value와 min value를 출력하시오.
public class MaxMinValue { public static void main(String[] args) { // Q. 삼항 연산자를 이용하여 정수 2개 중 max value와 min value를 출력하시오. int a = 10; int b = 20; // min value int min = (a < b) ? a : b; System.out.println("min = " + min); // 10 // max value int max = (a > b) ? a : b; System.out.println("max = " + max); // 20 } }
[2] 산술, 대입 연산자
산술 연산자
사칙 연산자(+, -, *, /)와 나머지 연산자(%)
+(더하기), -(빼기), *(곱하기), /(몫)
예) 정수형과 정수형 : 5 / 2 -> 정수형 2
예) 실수형과 실수형 : 5.0 / 2.0 -> 실수형 2.5
예) 정수형과 실수형 : 5.0 / 2 -> 실수형 2.5
예) 11 / 4 = 2
예) 11.0 / 4.0 = 2.75
예) 11 % 4 = 3
예) 11.0 % 4.0 = 오류
대입 연산자
복합 대입(=) 연산자 : 산술 연산자 + 대입 연산자
+=, -=, *=, /=, %=
*대입 연산자(=) : 연산자 오른쪽 수식의 값을 왼쪽 변수에 대입
변수(L-Value) = 수식(R-Value)
예) a += b -> a = a + b
예) a -= b -> a = a - b
예) a *= b -> a = a * b
예) a /= b -> a = a / b
예) a %= b -> a = a % b
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.