연산자(Operator)

윤재열·2022년 1월 5일
0

Java

목록 보기
3/71

연산자란?

-어떠한 기능을 수행하는 기호(+,-,*,/ 등)
-피연산자(Operand)는 연사자의 작업대상이다.(변수,상수,리터럴,수식이 될수있다.)
ex) a+b 여기서 a와b가 피연산자에 해당하며, +는 연산자에 해당한다.

나는 연산자야 뭐 이과니까 기본이지 생각을 하면서 가볍게 넘겼으나, 의외로 이 연산자가 헷갈렸다.
대표적으로 &&,|| ++,-- 그래서 이번에는 한번더 뇌에 새기도록 해보겠습니다.

연산자의 우선순위:
-괄호의 우선순위가 제일 높다(당연한것.)
-산술 > 비교 > 논리 > 대입
-단항 > 이항 > 삼항
-연산자의 연산 진행방향은 왼쪽에서 오른쪽이다.->
단, 단항,대입 연산자만 오른쪽에서 왼쪽으로간다.<-

- x + 3	   		//단항 >이항
x + 3 * y 		// (*,/) >(+,-)
x + 3 > y - 2 		//산술 > 비교
x > 3 && x < 5 		//비교 > 논리
int result = x + y * 3; //항상 대입은 맨 마지막에한다.

, <<, >>,<<<,>>>는 덧셈 연산자보다 우선순위가 낮다.

||, |(OR)는 &&,&(AND)보다 우선순위가 낮다.

Ex) x < -1 || x > 3 && x < 5; //일때
x < -1 || (x > 3 && x < 5); //와같다.


이제 연산자의 종류에 대해 공부해보자.

증감연산자 - ++,--

-증가연산자(++) : 피연산자의 값을 1 증가시킨다.

전위형 j = ++i;  ++i;  j=i; //값이 참조 되기 전에 증가시킨다.
후위형 j = i++;  j=i; i++; //값이 참조된 후에 증가시킨다.

-감소연산자(--) : 피연산자의 값을 1 감소시킨다.

나머지 연산자 %

나머지한 나머지를 반화한다.
홀수,짝수 등 배수검사에 주로 사용한다.(ex)3,6,9게임
100%8 = 2 , -100%8 = -2

쉬프트 연산자 <<,>>,>>>

2의n승으로 곱하거나 나눈 결과를 반환한다.
장점:곱셉,나눗셈보다 빠르다
x<<n 은 x 2의 n제곱
x>>n 은 x / 2의 n제곱
8<<2 는 8
2의 2제곱 = 32
8>>2 는 8 / 2의 2제곱 = 2

비교 연산자 >,<,>=,==,!=

피연산자를 같은 타입으로 변환한 후에 비교한다. 결과값은 true,false로 나온다.
기본형과 참조형에 사용할수있으나 String같은 참조형에는 ==,!= 만 사용가능하다.

비트연산자 &,|,^

피연산자를 비트단위로 연산한다.실수형(float,double)형을 제외한 모든 기본형에 사용가능하다.
OR연산자 (|) : 피연산자 중 어느 한 쪽이 true면 true다.
AND연산자(&) : 피연산자 양 쪽 모두 true이면 true이다.(한쪽이 false면 false)
XOR연산자(^) : 피연산자가 서로 다를 때 true다.

논리연산자 &&, ||

-비트 연산자와 동일하다.
-boolean형

int i =7;
i > 3 && i < 5 //false
i > 3 || i < 5 //true

삼항 연산자 ? :

-조건식의 연산결과가 true면 '식1'의 결과를 반환하고,false면'식2'결과를 반환한다.
-(조건식) ? 식1 : 식2

int score =50;
char grade = score >=90 ? 'A' : 'B';
profile
블로그 이전합니다! https://jyyoun1022.tistory.com/

0개의 댓글