3.1 연산자(Operator) 기초
프로그램에서 데이터를 가공하고 계산하기 위해 사용되는 기호를 연산자(Operator)라고 합니다. 자바는 수학적 계산, 논리적 판단 등을 위한 다양한 연산자를 제공합니다.
1. 연산자와 피연산자
- 연산자(operator): 연산을 수행하는 기호 (예:
+,-,*,/) - 피연산자(operand): 연산자의 작업 대상 (변수, 상수, 리터럴, 수식)
int result = x + 3;
// 연산자: = , +
// 피연산자: result, x, 3
연산자는 피연산자로 연산을 수행하고 나면 항상 '결과값'을 반환합니다.
2. 연산자의 종류
자바의 연산자는 크게 네 가지로 분류할 수 있습니다.
- 산술 연산자: 사칙연산(
+,-,*,/) 및 나머지 연산(%) - 비교 연산자: 크고 작음 또는 같음을 비교(
>,<,>=,<=,==,!=) - 논리 연산자: 그리고(AND), 또는(OR), 부정(NOT) 등 논리 조건을 판별(
&&,||,!) - 대입 연산자: 우변의 값을 좌변에 저장(
=,+=,-=)
그 외에도 비트 연산자, 조건 연산자(삼항 연산자) 등 특별한 목적을 위한 연산자들이 있습니다.
3. 연산자의 우선순위와 결합규칙
식이 복잡할 경우, 어떤 연산을 먼저 할 것인가에 대한 규칙이 존재합니다. 수학에서의 일반적인 계산 순서와 유사합니다.
- 산술 > 비교 > 논리 > 대입: 대입은 가장 마지막에 수행됩니다.
- 단항 > 이항 > 삼항: 피연산자의 개수가 적은 연산자가 식의 처리에 우선순위를 가집니다.
- 괄호
()를 사용하면 최우선적으로 연산합니다.
우선순위가 헷갈린다면, 망설이지 말고 괄호 ()를 묶어 우선순위를 직접 명시 하는 코딩 습관을 가지는 것이 좋습니다. 가독성을 높이고 버그를 줄일 수 있습니다.