03.자바기초
[Java] 자바 연산자와 우선순위
연산자와 우선순위
연산자(operator)
연산자(operater)란 대상을 두고 계산을 할 때 사용되는 문자를 말하며 계산이 이루어지는 대상을 피연산자(operand)라고 합니다. 연산자와 피연산자는 주어진 식을 계산하여 결과를 나타내는 연산을 하는 구성요소입니다.
연산자(operater) 우선순위
연산자의 우선순위는
증감 연산자 >산술 연산자 > 관계 연산자 > 논리 연산자 > 할당 연산자로
증감 연산자가 가장 우선순위가 높습니다.
연산자의 종류
연산자 - 산술, 증감, 관계, 삼항 연산자
1) 산술 연산자
산술 연산자는 사칙연산을 하는 연산자를 말합니다.
<산술 연산자의 종류와 의미>
연산자 |
표현식 |
연산자의 의미 |
= |
A = B |
B의 값을 A에다가 대입 |
+ |
C= A + B |
A와 B를 더한 값을 C에 대입 |
- |
C= A - B |
A에 있는 값에서 B에 있는 값을 뺀 다음 C에 대입 |
* |
C= A * B |
A와 B를 곱한 값을 C에 대입 |
/ |
C= A / B |
A에 있는 값에서 B에 있는 값을 곱한 다음C에 대입 |
% |
C= A % B |
A에 있는 값에서 B에 있는 값을 나눈 다음 나머지를 C에 대입 |
2) 증가, 증감 연산자
전위 후위연산을 변수를 통해 할 수 있는 연산자 를 말한다.
<증가, 증감 연산자의 종류와 의미>
연산자 |
표현식 |
연산자의의미 |
x의 초기값 |
++ |
y = ++x; |
x값에 1을 증가한 값을 y에 대입 |
5 |
y = x++; |
x값을 y에 대입한 후 x값을 1 증가 |
5 |
|
-- |
y = --x; |
x값에 1을 증감한 값을 y에 대입 |
5 |
y = x--; |
x값을 y에 대입한 후 x값을 1 감소 |
5 |
3) 관계 연산자
두 개의 값을 비교해서 true, false로 return하는 연산자를 말한다.
<관계 연산자의 종류와 의미>
연산자 |
표현식 |
연산자의 의미 |
< |
A < B |
A는 B보다 작으면 true 아니면 false |
> |
A > B |
A는 B보다 크면 true 아니면 false |
<= |
A <= B |
A는 B보다 작거나 같으면 true 아니면 false |
>= |
A >= B |
A는 B보다 크면 true 아니면 false |
== |
A == B |
A는 B와 같으면 true 아니면 false |
!= |
A != B |
A는 B와 같지 않으면 true 아니면 false |
4) 삼항 연산자
삼항(ternary) 연산자는 세 개의 피연산자로 구성된 연산자로 조건에 따라 서로 다른 내용을 수행하는 경우에 사용되는 연산자이다
삼항 연산자의 형식은 다음과 같다.
-조건식) ? 식 1 : 식 2
- 조건식이 참(true)이면 식1, 거짓(false)이면 식2를 수행함
연산자 - 논리, 비트, 시프트, 대입 연산자
1)논리 연산자
논리 연산자는 &&, ||, ! 를 이용해서 참과 거짓을 return하는 연산자를 말한다.
<논리 연산자의 종류와 의미>
연산자 |
연산자의 의미 |
&& |
두 값이 모두 참일 때 만 결과 값이 ‘true' |
|| |
두 값이 모두 거짓일 때만 결과 값이 ‘false' |
! |
결과 값이 참이면 ‘false' , 거짓이면 ’true'로 반대로 return |
2) 비트 연산자
수치를 이진화 비트연산으로 결과를 return하는 연산자를 말한다.
<비트 연산자의 종류와 의미>
비트연산자 |
표현식 |
연산자의 의미 |
& |
A & B |
A와 B값을 비트 단위로 AND 연산 |
| |
A | B |
A와 B값을 비트 단위로 OR 연산 |
^ |
A ^ B |
A와 B값을 비트 단위로 배타적 OR연산 |
~ |
~A |
~A A의 값을 보수 연산 |
3) 시프트 연산자
주어진 비트만큼 오른쪽, 왼쪽으로 비트 연산을 하는 연산자를 말한다.
<시프트 연산자의 종류와 의미>
연산자 |
표현식 |
연산자의 의미 |
예제 |
결과 |
<< |
x << n |
정수 x를 n비트 왼쪽으로 이동시키고, 오른쪽 비트는 항상 0으로 채움 |
1 << 2 |
4 |
-1 >> 2 |
-4 |
|||
>> |
x >> n |
정수 x를 n비트 오른쪽으로 이동시키 고, 왼쪽 비트는 양수일 경우 0으로, 음수일 경우 1로 채움 |
8 >> 2 |
2 |
-8 >> 2 |
-2 |
|||
>>> |
x >>> n |
정수 x를 n비트 오른쪽으로 이동시키 고, 왼쪽 비트는 항상 0으로 채움 |
8 >>> 2 |
2 |
4) 대입 연산자
오른쪽 수식을 계산한 값을 왼쪽에 있는 변수에 대입하는 연산자를 말한다
<대입 연산자의 종류와 의미>
연산자 |
표현식 |
연산자의 의미 |
= |
A=B |
B 의 값을 A에 대입 |
+= |
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 와 동일 |
&= |
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 와 동일 |
>>>= |
A >>>= B |
A = A >>> B 와 동일 |
'개발참고' 카테고리의 다른 글
[Java] 자바의 구문 분석 (0) | 2020.05.23 |
---|---|
[Java] 자바의 형식을 의미하는 식별자, 상수를 나타내는 자료형 (0) | 2020.05.20 |
[Java] Java란 무엇인가? (0) | 2020.05.20 |
[JSP&Servlet] JSP 내장객체, 액션, 컴포넌트 (0) | 2020.05.19 |
[JSP&Servlet] JSP 개요 (0) | 2020.05.19 |