본문 바로가기

프로그래밍/Java

[Java] 3. 연산자

연산자

변수나 값의 연산을 위해 사용되는 부호로 우선 순위를 가지고 있다.

주로 사용하는 연산자의 우선 순위를 높은대로 나열하자면

 

최우선 연산자

단항 연산자

산술 연산자

비교 연산자

논리 연산자

삼항 연산자

대입 연산자

 

여기서 최우선 연산자는 '()', '.', '{ }'로 .을 제외하고는 수학과 비슷하게 가장 먼저 연산된다.

 

이제 단항 연산자부터 자세하게 알아보도록 하자.

 

단항 연산자에는 논리 부정 연산자(!), 증감 연산자(++, --), 전위 연산자(++변수, 변수++, --변수, 변수--)가 있다.

 

isTrue의 값을 부정하여 false가 되었다.

논리 부정 연산자는 논리값을 부정하는 것으로 변수앞에 '!'을 붙여 사용한다.

 

증감 연산자는 피연산자의 값에 1을 더하거나 빼는 연산자이다.

'++', '--'를 사용하며 앞에 붙냐 뒤에 붙냐에 따라 결과가 다르게 나타난다.

위치에 따라 결과가 다르게 나타나는것을 전위, 후위 연산자라 한다.

 

전위 연산자는 먼저 연산을 하고나서 다른 연산을 수행하고

후위 연산자는 다른 연산을 하고나서 연산을 수행한다.

따라서 ++iNum1은 먼저 연산을 수행했기 때문에 바로 iNum2가 101이 출력되었지만

iNum3++은 다른 연산을 먼저 수행하기 때문에 우선 100이 출력 된것이다.

 

다음으로 산술 연산자이다.

산술 연산자는 굉장히 우리가 알던 것과 흡사한데

연산 방법과 우선 순위까지 일반적인 수학과 동일하다.

 

종류로는 '+', '-', '*', '/', '%'가 있고

각각 더하기, 빼기, 곱하기, 나누기의 몫, 나누기의 나머지를 연산한다.

 

비교 연산자는 값이 같은지 다른지를 나타내는 연산자와

값의 크기를 비교하는 연산자가 있다.

 

 

전자의 경우 '==', '!='를 사용하고 값이 동일한지 유무를 판단하므로

결과값은 논리 값인 true와 false가 나온다.

==는 동일하면 true, !=는 동일하지 않으면 true를 반환한다.

모든 자료형이 사용할 수 있는 연산자 이다.

참조 자료형 String의 경우 주소값을 비교하기 때문에 참고하자.

 

값의 크기를 비교하는 비교 연산자는 크기를 비교하기 때문에 논리 자료형인 boolean과 문자열 값을 가지는

String같은 참조형은 사용이 불가능하다.

'>', '>=', '<=', '<'을 사용하며 각각 크면, 크거나 같으면, 작거나 같으면, 작으면 true를 반환한다.

 

세 번째로 논리 연산자이다.

 

논리 값 두개를 비교하는 연산자로 &&은 두 피연산자가 모두 true면 true

||는 두 피연산자가 둘 중 하나 true면 true를 반환한다.

 

네 번째로 복합 대입 연산자이다.

자기 자신과 연산하고 그 결과를 자신한테 누적으로 대입하는 연산자로

산술 연산자와 대입 연산자(=)가 결합한 것이다.

쉽게 표현하면 num += 5는 num = num + 5와 동일하다.

 

마지막으로 삼항 연산자이다.

간단한 조건문은 추후 배울 if문 대신 삼항 연산자를 사용하는 경우도 많다고한다.

 

조건식 ? 식1 : 식2; 의 구조를 가지고 있으며

조건식 결과값이 true면 식1을 수행하고 false면 식2를 수행한다.

삼항 연산자를 중첩해서 삼항 연산자 안에 삼항 연산자를 쓰는 것도 가능하다.

'프로그래밍 > Java' 카테고리의 다른 글

[Java] 6. 객체  (0) 2023.02.21
[Java] 5. 배열  (0) 2023.02.21
[Java] 4. 제어문  (0) 2023.02.21
[Java] 2. 변수  (0) 2023.02.19
[Java] 1. 자바의 설치  (0) 2023.02.19