연산자
+, -, *, / 와 같이 계산을 수행하는 기호를 연산자라 한다.
연산자 종류
- 산술 연산자 : +, -, *, /, %(나머지 연산자)
- 증감(증가 및 감소) 연산자 : ++, --
- 비교 연산자 : ==, !=, >, <, >=, <=
- 논리 연산자 : && (AND), || (OR), ! (NOT)
- 대입 연산자 : =, +=, -=, *=, /=, %=
- 삼항 연산자 : ? :
연산자와 피연산자
3 + 4
a + b
- 연산자(operator) : 연산 기호 예) +, -
- 피연산자(operand) : 연산 대상 예) 3, 4, a, b
산술 연산자
산술 연산자는 주로 숫자를 계산하는 데 사용된다. 우리가 이미 잘 알고 있는 수학 연산을 수행한다.
- + (더하기)
- - (빼기)
- * (곱하기)
- / (나누기)
- % (나머지)
주의! 0으로 나누기
10 / 0과 같이 숫자는 0으로 나눌 수 없다. (수학에서 허용하지 않음)
실행하면 다음과 같은 예외를 확인할 수 있다.
Exception in thread "main" java.lang.ArithmeticException: / by zero
예외가 발생하면 해당 시점 이후의 결과가 출력되지 않고 프로그림이 종료된다.
연산자 우선순위
자바는 다음과 같은 연산자 우선순위가 있다. 높은 것에서 낮은 순으로 적었다.
1. 괄호 ()
2. 단항 연산자 (예 : ++, --, !, ~, new, (type))
3. 산술 연산자 (*, /, % 우선, 그다음에 +, -)
4. shift 연산자 ( <<, >>, >>>)
5. 비교 연산자 ( <, <=, >, >=, instanceof)
6. 동식 연산자 (==, !=)
7. 비트 연산자 (&, ^, |)
8. 논리 연산자 (&&, ||)
9. 삼항 연산자 (? : )
10. 대입 연산자 ( =, +=, -=, *=, /=, %= 등등)
증감 연산자
증가 및 감소 연산자를 줄여서 증감 연산자라 한다.
증감 연산자는 ++와 --로 표현되며, 이들은 변수의 값을 1만큼 증가시키거나 감소시킨다.
프로그래밍에서는 값을 1씩 증가하거나 1씩 감소할 때가 아주 많기 때문에 이런 편의 기능을 제공한다.
전위, 후위 증감연산자
증감 연산자는 피연산자 앞에 두거나 위에 둘 수 있으며, 연산자의 위치에 따라 연산이 수행되는 시점이 달라진다.
- ++a : 증감 연산자를 피연산자 앞에 둘 수 있다. 이것을 앞에 있다고 해서 전위(Prefix) 증감 연산자라 한다.
- a++ : 증감 연산자를 피연산자 뒤에 둘 수 있다. 이것을 뒤에 있다고 해서 후위(Postfix) 증감 연산자라 한다.
* 증감 연산자를 단독으로 사용하는 경우에는 다른 연산이 없기 때문에, 본인의 값만 증가한다. 따라서 전위이든 후위이든 둘 다 결과가 같다.
비교 연산자
비교 연산자는 두 값을 비교하는 데 사용한다. 비교 연산자는 주로 뒤에서 설명하는 조건문과 함께 사용한다.
- == : 동등성 (equal to)
- != : 불일치 (not equal to)
- > : 크다 (greater than)
- < : 작다 (less than)
- >= : 크거나 같다 (greater than or equal to)
- <= : 작거나 같다 (less than or equal to)
비교 연산자를 사용하면 참(true) 또는 거짓(false)이라는 결과가 나온다. 참 거짓은 boolean 형을 사용한다.
여기서 주의할 점은 =와 ==이 다르다는 점이다.
- = : 대입 연산자, 변수에 값을 대입한다.
- == : 동등한 지 확인하는 비교 연산자
불일치 연산자는 !=를 사용한다. !는 반대라는 뜻이다.
문자열 비교
문자열이 같은지 비교할 때는 = 이 아니라 .equals() 메서드를 사용해야 한다.
==를 사용하면 성공할 때도 있지만 실패할 때도 있다.
논리 연산자
논리 연산자는 boolean 형인 true, false를 비교하는 데 사용한다.
- && (그리고) : 두 피연산자가 모두 참이면 참을 반환, 둘 중 하나라도 거짓이면 거짓을 반환
- || (또는) : 두 피연산자 중 하나라도 참이면 참을 반환, 둘 다 거짓이면 거짓을 반환
- ! (부정) : 피연산자의 논리적 부정을 반환. 즉, 참이면 거짓을, 거짓이면 참을 반환
대입 연산자
대입 연산자(=)는 값을 변수에 할당하는 연산자다. 이 연산자를 사용하면 변수에 값을 할당할 수 있다.
예를 들어, int a = 1는 a라는 변수에 1이라는 값을 할당한다.
축약(복합) 대입 연산자
산술 연산자와 대입 연산자를 한 번에 축약해서 사용할 수 있는데, 이것을 축약(복합) 대입 연산자라 한다.
연산자 종류 : +=, -=, *=, /=, %=
자주 사용하는 연산자 정리
- 산술 연산자 : +, -, *, /, %(나머지)
- 증가 및 감소 연산자 : ++, --
- 비교 연산자 : ==, !=, >, <, >=, <=
- 논리 연산자 : && (AND), || (OR), ! (NOT)
- 대입 연산자 : =, +=, -=, *=, /=, %=
- 삼항 연산자 : ? :
- instanceof 연산자 : 객체 타입을 확인한다.
- 그 외 : new, [ ] (배열 인덱스), . (객체 멤버 접근), ( ) (메소드 호출)
비트 연산자는 실무에서 거의 사용할 일이 없다.
- 비트 연산자 : &, |, ^, ~, <<, >>, >>>
'Study' 카테고리의 다른 글
[JAVA/자바] 반복문 (0) | 2023.04.06 |
---|---|
[JAVA/자바] 조건문 (0) | 2023.03.31 |
[JAVA/자바] 변수 명명 규칙 (0) | 2023.03.10 |
[JAVA/자바] 변수 타입 (0) | 2023.03.02 |
java: variable a might not have been initialized (0) | 2023.02.17 |