x + 3
- 연산자: 연산을 수행하는 기호(+,-,* 등)
- 피연산자: 연산자의 작업 대상(변수, 상수, 리터럴, 수식)
- 연산자는 피연산자로 연산을 수행하고 나면 항상 결과값을 반환한다.
연산자를 사용해 결과를 얻었다면 그 값을 변수에 저장해야 한다.
1 + 2; // 3이라는 결과를 얻지만 쓰이지 않고 사라진다.
y = 1 + 2;
System.out.println(y); // 변수 y의 값을 화면에 출력
식에 사용된 연산자가 둘 이상인 경우, 연산자의 우선순위에 의해서 연산순서가 결정된다. 수학에서 곱셉과 나눗셈이 덧셈과 뺄셈보다 우선순위가 높은 것과 같다.
이항 연산자는 두 피연산자의 타입이 일치해야 연산이 가능하므로, 연산전에 형변환 연산자로 피연산자의 타입을 일치시켜야한다.
int i = 10; float f = 20.0f; float result = f + (float)i; // 형변환으로 두 피연산자의 타입을 일치
작은 타입에서 큰 타입으로 형변환하는 경우, 자동 형변환되므로 형변환 연산자를 생략할 수 있다.
float result = f + i;
long + int -> long + long -> long
float + int -> float + float -> float
byte + short -> int + int -> int
char + short -> int + int -> int
참고
자바의 정석(저자: 남궁성)
연산자와 우선순위 규칙은 파이썬에도 있는 내용이므로 쉽게 익힐 수 있었다.
내일은 연산자 종류대로 자세히 알아보고, 예제를 통해 자바 연산을 익히겠다.