이 자바의 정석을 읽으면서 공부한 내용을 정리하며 기록하는 글이고
주관적인 생각이 들어갈 수 있습니다.
잘못된 내용이나 피드백 및 생각 공유는 언제든 환영입니다.
댓글로 남겨주시면 확인 후 수정하겠습니다.
1. 연산자
연산자(operator) : 연산을 수행하는 기호
피연산자(operand) : 연산자의 작업 대상
연산자의 결합 규칙
- 산술 > 비교 > 논리 > 대입. 대입은 제일 마지막에 수행된다.
- 단항 > 이항 > 삼항. 단항 연산자의 우선순위가 이항 연산자보다 높다.
- 단항 연산자와 대입 연산자를 제외한 모든 연산의 진행방향은 왼쪽에서 오른쪽이다.
산술 변환 : 연산 수행 직전에 발생하는 피연산자의 자동 형 변환(보다 큰 타입으로 일치)
2. 단항 연산자
증감 연산자 ++ --
전위형(앞에 쓰임) : 값이 참조되기 전에 증가시킨다.
후위형(뒤에 쓰임) : 값이 참조된 후에 증가시킨다.
부호 연산자 + -
boolean 형과 char형을 제외한 기본형에만 사용할 수 있다.
3. 산술 연산자
사칙 연산자 + - * /
나누는 수로 0을 사용할 수 없다. 그리고 형 변환을 해야할 상황을 잘 구분해야 한다.
나머지 연산자 %
나누는 수로 0을 사용할 수 없다.
4. 비교 연산자
대소비교 연산자 < > <= >=
- 두 피연산자의 값의 크기를 비교하고 참이면 true, 거짓이면 flase의 결과로 반환한다.
- 기본형에서 boolean형을 제외한 나머지 자료형에 다 사용 가능하고 참조형에는 사용할 수 없다.
등가비교 연산자 == !=
- 두 피연산자의 값이 같은지 또는 다른지를 비교하는 연산자이다.
- 기본형은 물론 참조형, 즉 모든 자료형에 사용할 수 있다.
- 실수형은 근사값으로 저장되므로 오차가 발생할 수 있다.
문자열의 비교
두 문자열을 비교할 때는 문자열 내용이 같은지 비교하는 equals()라는 메서드를 사용해야 한다.
5. 논리 연산자
논리 연산자 && || !
- && (AND결합) : 피연산자 양쪽 모두 true이어야 true를 결과로 얻는다.
- || (OR결합) : 피연산자 중 어느 한 쪽만 true이면 true를 결과로 얻는다.
- ! : 논리 부정 연산자. true와 false를 반대로 바꾸는 것
비트 연산자
- | ( OR연산자) : 피연산자 중 한 쪽의 값이 1이면, 1을 결과로 얻는다. 그 외에는 0을 얻는다.
- & (AND연산자) : 피연산자 양 쪽이 모두 1이어야만 1을 결과로 얻는다. 그 외에는 0을 얻는다.
- ^ (XOR연산자) : 피연산자의 값이 서로 다를 때만 1을 결과로 얻는다. 같을 때는 0을 얻는다.
- ~ (비트 전환 연사자) : 0은 1로, 1은 0으로 바꾼다.
- << >> (쉬프트 연산자) : 방향에 따라 피연산자 부호와 상관 없이 각 자리를 이동시킨다.
6. 그 외의 연산자
조건 연산자 ? :
- 조건식 ? 식1 : 식2
- 조건식에 따라 참이면 식1, 거짓이면 식2의 결과를 가지게 된다.
대입 연산자 = op=
- 변수와 같은 저장공간에 값 또는 수식의 연산결과를 저장하는데 사용
- 대입 연산자의 왼쪽 피연산자를 lvalue, 오른쪽 피연산자를 rvalue라 한다.