less than 1 minute read

★java의 연산자
더하기 뺴기 나누기 곱하기는 돌고래도 알기때문에 생략
% : 나머지
<, >, <=, >=, ==(같다면)
!= : 다르다면
++ –(증감)
a++ : 나중에증가 시켜라
++a : 먼저 증가 시켜라
&&(and) , ||(or)

★비트 연산자

  1. &(and) : a & b : a와 b가 모두 1인 자리는 1
  2. (or) : a b : a나 b중 하나라도 1인 자리는 1
  3. ^(xor) : a ^ b : a와 b가 서로 다른 자리는 1
  4. ~(not) : ~a : a의 1의 보수

★시프트 연산자(n은 정수)

  1. n « 2 : 비트를 2칸 왼쪽으로 밀면서 빈자리를 0으로 채운다. 왼쪽으로 밀려나간 2개의 비트는 삭제된다. 1번 실행할 때 마다 x2를 한 것과 같다. 왜냐면
  2. n » 2 : 비트를 2칸 오른쪽으로 밀면서 빈자리를 밀기 전 맨 앞자리 수와 같은 수로 채운다. 즉 1로 시작하던 수는 1 두개로 채우고 0으로 시작하던 수는 0 두개로 채운다. 오른쪽으로 밀려나간 2개 비트는 삭제된다.
  3. n »> 2 : 비트를 2칸 오른쪽으로 미는 건 같지만 빈 자리를 무조건 0으로 채운다.

★비트 연산자와 시프트 연산자의 경우는 잘 안쓰이는 것 같으면서도 남이 짠 코드를 보다보면 가끔 응용하는 경우가 있다. 대부분 자료구조나 알고리즘에서 구현에 쓰이는 것 같다. 두 연산자에 관한 자세한 내용은 [Algorithm] 재미있는 비트 연산를 참고하자.

★삼항연산자 String result = (n == 1) ? “합격” : “불합격”;

Categories:

Updated: