연산자의 종류와 우선 순위
증감 연산자
피연산자의 값을 1씩 증가 또는 감소 시키는 연산자이다. 증감 연산자가 변수 앞, 뒤에 따라 값이 달라진다.
X++: 해당 연산을 수행한 후 피연산자의 값을 1증가 시킴
++X: 피연산자의 값을 1증가 시킨 후 해당 연산을 수행
X--: 해당 연산을 수행한 후 피연산자의 값을 1감소 시킴
--X: 피연산자의 값을 1감소 시킨 후 해당 연산을 수행함
산술 연산자
가장 기본이 되는 연산자로 4칙 연산과 나머지 값을 구하는 나머지 연산자가 있다.
시프트 연산자
bit단위의 연산처리를 하여 자료의 가공을 위해 오른쪽 또는 왼쪽으로 이동하여 값에 대한 변화를 일으키는 연산자.
>> bit 값을 오른쪽으로(빈 자리는 부호값) 이동
<< bit 값을 왼쪽으로(빈 자리는 0으로 대입) 이동
>>> bit 값을 오른쪽으로(빈 자리는 0으로 대입) 이동
관계 연산자(비교 연산자)
변수나 상수의 값을 비교할 때 쓰이는 연산자로서 결과가 항상 true / false 인 논리값이어야한다.
> 크다 < 작다 >= 크거나 같다
<= 작거나 같다 == 피연산자들의 값이 같다 != 피연산자들의 값이 같지 않다
논리 연산자
피연산자의 값이 true / false인 논리 값을 가지고 다시 한번 조건 연산하는 연산자이다.
& : and :주어진 조건들이 모두 true일 때만 true를 나타낸다.
| : or :주어진 조건들 중 하나라도 true이면 true를 나타낸다.
! : not :true는 false로 false는 true로 나타낸다
&&: 선 조건이 true일 때만 후조건을 실행 false이면 후조건을 실행하지 않는다.
||: 선 조건이 true이면 후조건을 실행하지 않으며 선조건이 false일 때만 후조건을 실행한다.
대입 연산자(assignment operator)
특정한 상수 값이나 변수 값 또는 객체를 변수에 전달하여 기억시킬때 사용하는 연산자이다.
= 연산자를 중심으로 오른쪽 변수 값을 왼쪽 변수에 대입한다.
+= 왼쪽 변수에 더하면서 대입한다.
-= 왼쪽 변수값에서 빼면서 대입한다.
*= 왼쪽변수에 곱하면서 대입한다.
/= 왼쪽 변수에 나누면서 대입한다.
%= 왼쪽 변수에 나머지 값을 구하면서 대입한다.
비트 연산자
피연산자 즉 연산의 대상이 되는 값들을 내부적으로 bit 단위로 변경한 후 연산을 수행하는 연산자이다.
& 비트 단위의 AND
| 비트 단위의 OR
^ XOR(배타적 OR)
~ 단항 연산자이며, 비트를 반전한다.
조건 연산자
하나의 조건을 정의하여 만족 시에는 true 불만족시 false를 반환. 단순 비교 변화를 유도하는 연산자
피연산자가 3개라 해서 삼항 연산자라고도 부름.
?: : 조건식? 참값: 거짓값
instanceof 연산자
객체 타입을 확인하는 연산자
형변환 가능 여부를 확인하며 true / false로 결과를 반환
주로 상속 관계에서 부모객체인지 자식 객체인지 확인하는 데 사용된다.
기본 사용방법으로 "객체 instanceof 클래스" 를 선언함으로써 사용
화살표 연산자
Java에서 람다 표현식의 syntax일부이다.
인자를 0개부터 받아서 implementation 부분에서 활용할 수 있다.
argument list 부분의 인자가 하나라면 구현부의 소괄호를 생략할 수 있으며, statement 개수가 1개이면 중괄호를 생략할 수 있다.
Java 13, switch 연산자
Java12부터 스위치 연산자가 추가 되었다. 기존에 스위치문이 변경된 것이 아니라 스위치 연산자가 추가 된 것이다.
switch operator
래퍼런스
https://phantom.tistory.com/19
https://mine-it-record.tistory.com/120