자바의 다양한 연산자
자바는 다양한 연산자를 제공하여 수학적이고 논리적인 연산을 수행할 수 있습니다. 이번 글에서는 몇 가지 자주 사용되는 연산자에 대해 알아보고 예제 코드도 함께 살펴보겠습니다.
1. 산술 연산자
산술 연산자는 숫자에 대한 사칙연산을 수행합니다. 덧셈 연산자인 +, 뺄셈 연산자인 -, 곱셈 연산자인 *, 나눗셈 연산자인 /, 그리고 나머지 연산자인 % 등이 대표적인 산술 연산자입니다. 이 연산자들은 숫자 값을 연산하여 새로운 숫자 값을 반환합니다.
int a = 10;
int b = 2;
int sum = a + b; // 12
int diff = a - b; // 8
int prod = a * b; // 20
int quot = a / b; // 5
int rem = a % b; // 0
2. 대입 연산자
대입 연산자는 변수에 값을 할당합니다. = 기호가 가장 일반적인 대입 연산자입니다. 변수에 원하는 값을 대입하여 변수를 초기화하거나 값을 업데이트할 수 있습니다.
int a;
a = 10; // a = 10
a = a + 3; // a = 13
a -= 2; // a = 11
3. 증감 연산자
증감 연산자는 변수의 값을 증가시키거나 감소시킵니다. ++은 값을 1 증가시키고, --는 값을 1 감소시킵니다. 이러한 연산자는 주로 반복문에서 사용되어 변수의 값을 업데이트하거나 조건식을 판단할 때 사용됩니다.
int a = 0;
a++; // a = 1
++a; // a = 2
a--; // a = 1
--a; // a = 0
4. 비교 연산자
비교 연산자는 두 개의 값을 비교하고, 그 결과를 참(true) 또는 거짓(false)으로 반환합니다. 주로 조건문과 반복문에서 사용됩니다. 등호(==)는 두 값이 같은지를 비교하고, 부등호(!=)는 두 값이 다른지를 비교합니다. 또한, 부등호(>, <, >=, <=)는 크기를 비교하는데 사용됩니다.
int a = 10;
int b = 20;
boolean isEqual = a == b; // false
boolean isNotEqual = a != b; // true
boolean isGreater = a > b; // false
boolean isLess = a < b; // true
boolean isGreaterOrEqual = a >= b; // false
boolean isLessOrEqual = a <= b; // true
5. 논리 연산자
논리 연산자는 논리적인 연산을 수행합니다. 주로 조건문에서 사용되며, 여러 개의 조건을 동시에 판단할 수 있습니다. &&(논리곱)은 두 조건식이 모두 참일 때 참을 반환하고, ||(논리합)은 두 조건식 중 하나라도 참이면 참을 반환합니다. !(논리부정)은 조건식의 결과를 반전시킵니다.
boolean a = true;
boolean b = false;
boolean andResult = a && b; // false
boolean orResult = a || b; // true
boolean notResult = !a; // false
6. 비트 연산자
비트 연산자는 숫자를 이진수로 처리하여 비트 수준에서 연산을 수행합니다. int, long 등 정수형에서 주로 사용되며, 비트 단위의 and(&), or(|), xor(^), not(~) 등이 대표적인 비트 연산자입니다. 이러한 연산자는 주로 비트 단위의 조작이 필요한 경우에 사용됩니다.
int a = 5; // Binary: 0101
int b = 3; // Binary: 0011
int bitAnd = a & b; // Binary: 0001, Decimal: 1
int bitOr = a | b; // Binary: 0111, Decimal: 7
int bitXor = a ^ b; // Binary: 0110, Decimal: 6
int bitNot = ~a; // Binary: 1010, Decimal: -6
7. 삼항 연산자
삼항 연산자는 세 개의 피연산자를 가지고 연산을 수행합니다. 조건식 ? 값1 : 값2 형태로 사용되며, 조건식이 참이면 값1을 반환하고, 거짓이면 값2를 반환합니다. 이를 통해 조건에 따라 두 가지 다른 값을 반환할 수 있습니다.
int a = 10;
int b = 20;
int max = a > b ? a : b; // max = 20
이렇게 자바에서는 다양한 연산자를 제공하여 수학적이고 논리적인 계산을 할 수 있습니다. 연산자의 사용은 프로그램의 효율성과 가독성에 큰 영향을 미치므로, 적절한 선택과 사용 방법을 익히는 것이 중요합니다.