Java

Java - 연산자(부제: 연산자의 종류를 알아보고 어떻게 쓰이는지 알아보자)

얄루몬 2021. 5. 17. 18:55

https://youtu.be/SZFMO1cw3BA

대입 연산자: =

산술 연산자: +, -, /, * ...

비교 연산자: 다음 챕터에서 공부

논리 연산자: 조건문에서 공부

 

 

연산자란? 

<산술연산자 - Arithmetic>

자바에서의 산술연산자

+ - 더하기

- - 빼기

* - 곱하기

/ - 나누기

% - 나머지 

int a = 3;
System.out.println(0%a); //0
System.out.println(1%a); //1
System.out.println(2%a); //2
System.out.println(3%a); //0
System.out.println(4%a); //1
System.out.println(5%a); //2
System.out.println(6%a); //3

<%  나머지 연산자의 사용방법 0을 3으로 나누면 나머지는 0 .. 1을 3으로 나누면 나머지는 1...>

 

문자열 역시 더해서 사용 가능하다. 


https://youtu.be/J-gkpLqmkZ8

프로그래밍에선 정수보다 실수가 더욱 조밀하고 방대한 데이터타입이기 때문에

자동으로 (정수/실수) 일 때 정수로 값을 인식한다. 


https://youtu.be/fXrRa0V6eKg

단항 연산자 = 1+2 에서 사용한 연산자 +는 이항연산자이고, 좌항인 1과 우항이 2를 더해주는 작업을 하고 있다.

단항 연산자는 하나의 항을 대상으로 연상이 이루어지는 연산자이다.

 

+ - 양수를 표현(실제로는 사용할 필요가 없다.)

- - 음수를 표현

++ - 증가 연산사로 항의 값을 1씩 증가 시킨다.

-- -감소 연산자로 항의 값을 1씩 감소 시킨다.

 

int i = 3;
i++;
// i = i+1
System.out.println(i); // 4출력

++i;
System.out.println(i); // 5출력

System.out.println(++i); //6출력 = ++i ~ i라는 변수에 1을 더한 결과를 괄호 안에 치환해서 println해라

System.out.println(i++); // 6출력 = i++ ~ i에 1이 더해지긴 하지만 괄호 안에서 1이 더해지지 않는다. 이는 println이 진행된 후에 1이 더해진다.
System.out.println(i); //7이 된다. 11번째 줄의 결과가 12번째 줄에서 값의 결과과 반환되어 나타나게 된다. 

연산의 우선순위

https://youtu.be/BCCdCq0rRso

실제로 프로그래밍을 하게 되면 다양한 연산자들을 복합적으로 사용하게 된다. 이럴 때 연산의 선후 관계가 분명하지 않으면 혼란스러울 것이다. 아래는 자바에서 제공하는 연산자들 간의 우선순위를 정리한 표이다.

우선순위연산자결합방향

1 [ ]
()
.
2 ++
--
+(양수) -(음수)
~
!
(type)
new
3 * / %
4 +(더하기) -(빼기)
+(문자 결합 연산자)
5 <<
>>
>>>
6 < <=
> >=
instanceof
7 ==
!=
8 &
&
9 ^
^
10 |
|
11 &&
12 ||
13 ? :
14 =
*= /= += -= %=
<<= >>= >>>=
&= ^= |=

위의 표를 보는 방법을 알아보자. 아래를 계산해보자.