-
연산자 (Operatores)JAVA 2023. 1. 12. 17:20반응형SMALL
연산자는 다음과 같이 변수나 값(Literal)에 대한 연산 작업을 수행하는데 사용하는 기호를 말합니다.
자바에서는 다음과 같이 5개의 연산자 그룹을 제공합니다.
1. 산술 연산자 (Arithmetic operators)
2. 대입 연산자 (Assignment operators)
3. 비교 연산자 (Comparison operators)
4. 논리 연산자 (Logical operators)
5. 비트 연산자 (Bitwise operators)
산술 연산자 (Arithmetic operators)
산술 연산자는 말 그래도 산술적인 연산을 수행하는 연산자이다.
연산자 이름 설명 사용예 + 더하기 두개의 값을 더함 x + y _ 빼기 한 값에서 다른 값을 뺌 x - y * 곱하기 두 값을 곱함 x * y / 나누기 값을 나누고 몫을 취함 x / y % 나머지 값을 나누고 나머지를 취함 x % y ++ 1증가 한 변수의 값을 1 증가시킴 ++x -- 1감소 한 변수의 값을 1 감소시킴 --x 대입 연산자 (Assignment operators)
대입 연산자는 변수에 특정 값을 대입시키는 연산자이다. 특정값은 상수 또는 변수 또는 연산결과 등이 될 수 있다.
Example
int x = 10;
x += 5;연산자 Example 다른 표현 = x = 5 x = 5 += x += 3 x = x + 3 -= x -= 3 x = x - 3 *= x *= 3 x = x * 3 /= x /= 3 x = x / 3 %= x %= 3 x = x % 3 &= x &= 3 x = x & 3 |= x |= 3 x = x | 3 ^= x ^= 3 x = x ^ 3 >>= x >>= 3 x = x >> 3 <<= x <<= 3 x = x << 3 비교 연산자 (Comparison operators)
비교 연산자는 보통 두값을 비교하는데 사용합니다. 두 값을 비교한 결과는 boolean형인 true(참) 또는 false(거짓)으로 반환합니다. 프로그밍에서 조건문 또는 반복문에 중요한 결과로 사용됩니다.
int x = 5; int y = 3; System.out.println(x > y); // returns true, because 5 is higher than 3
연산자 이름 Example == Equal to x == y != Not equal x != y > Greater than x > y < Less than x < y >= Greater than or equal to x >= y <= Less than or equal to x <= y 논리 연산자 (Logical operators)
논리 연산자를 기준으로 양변의 참, 거짓을 판단하거나 또는 값을 부정하여 그 결과를 boolean형인 true(참) 또는 false(거짓)으로 반환합니다. 그 판단은 논리 연산자를 기준으로 양변을 논리곱(AND, &&), 논리합(OR, ||) 또는 판단의 부정(NOT, !)으로 나타납니다.
연산자 이름 설명 Example && 논리곱(Logical And) 논리연산자 기준 양변이 참이면 참을 반환 x < 5 && x < 10 || 논리합(Logical Or) 논리연산자 기준 양변의 값 둘중 한값이 참이면 참을 반환 x < 5 || x < 4 ! 부정(Logical Not) 결과 부정, 참이면 거짓, 거짓이면 참을 반환 !(x < 5 && x < 10) 비트 연산자 (Bitwise operators)
값을 비트단위로 연산하여 결과값을 반환합니다.
연산자 이름 설명 Example & AND 두값을 비트 단위로 AND x & y | OR 두값을 비트 단위로 OR x | y ^ XOR(Exclusive OR) 두값을 비트 단위로 XOR x ^ y ~ NOT 값을 부정(Bit Reverse) ~x >> Shift Right 비트단위 오른쪽으로 n만큼 이동 x >> n << Shift Left 비트단위 왼쪽으로 n만큼 이동 x << n >>> Non-Signed Shift Right 비트단위 오른쪽으로 n만큼 이동시킨후 앞부분을 무조건 0으로 채움 x >>> n 그밖에 연산자
삼항연산자
?와 : 로 구성된 3개의 항에서 조건에 따라 실행할 항목이 결정됩니다. 형식은 다음과 같습니다.
조건 ? 항목1 : 항목2
조건이 true이면 항목1을 수행하고, false이면 항목2를 수행합니다.
Example
int x =0, a = 10, b = 20;
x = (a < b) ? a : b;
x = (a > b) ? a+b : b-a;instanceof 연산자
객체의 타입을 확인하여 결과를 참 또는 거짓으로 반환합니다.
Example
class A{}
class B extends A{}
...
A a = new A();
B b = new B();
a instanceof A; // true
b instanceof A; // true
a instanceof B; // false
b instanceof B; // true위 예제에서 a instanceof A; 와 b instanceof B; 는 당연히 true임을 알 수 있습니다. b instanceof A; 가 참인것은 클래스 B는 클래스 A를 상속받아 구현되어 객체화된것으로 b는 A의 인스턴스입니다. 반대로 부모 클래스인 A클래스의 인스턴스 a는 자식클래스 B와 연관이 없으므로 인스턴스 a는 B의 인스턴스가 아닙니다.
연산자 우선순위
여러 종류의 연산자가 하나의 식에 포함되어 있으면 연산자 우선순위에 따라 연산의 순서가 결정됩니다.
우선순위 종류 연산자 1 최우선 연산자 (), [] 2 단항 연산자 !, ~, +, -, ++, -- 3 산술 연산자 +, -, *, /, % 4 시프트 연산자 <<, >>, >>> 5 비교 연산자 <, >, >=, <=, ==, != 6 논리 연산자 &&, !! 7 삼항 연산자 (조건) ? 참 : 거짓 8 대입 연산자 =, +=, -=, *=, /=, %=, <<=, >>= 등 반응형LIST'JAVA' 카테고리의 다른 글
변수와 상수 (0) 2023.01.10 M1Pro 기반 macOS(Ventura)에서 Open JDK 설치하기 (0) 2023.01.07 Windows 10에서 Open JDK 8 설치하기 (0) 2023.01.07