반응형

1. 연산자란?

연산자(Operator)는 변수나 값에 대해 특정 작업을 수행하는 데 사용되는 기호나 키워드입니다. 예를 들어, +는 두 숫자를 더하는 데 사용되는 연산자입니다.

Java는 다양한 연산자를 제공하며, 이를 활용하여 계산, 비교, 논리적 판단, 조건 처리 등 다양한 작업을 수행할 수 있습니다.


2. 연산자의 종류

2.1 산술 연산자

산술 연산자는 기본적인 수학 연산을 수행하는 데 사용됩니다.

연산자 의미 예제
+ 덧셈 a + b
- 뺄셈 a - b
* 곱셈 a * b
/ 나눗셈 a / b
% 나머지 연산 a % b (a를 b로 나눈 나머지)

예제

public class ArithmeticOperators {
    public static void main(String[] args) {
        int a = 10, b = 3;
        System.out.println("덧셈: " + (a + b));
        System.out.println("뺄셈: " + (a - b));
        System.out.println("곱셈: " + (a * b));
        System.out.println("나눗셈: " + (a / b));
        System.out.println("나머지: " + (a % b));
    }
}

2.2 할당 연산자

할당 연산자는 변수에 값을 대입하거나 업데이트할 때 사용됩니다.

연산자 의미 예제
= 값 할당 a = 10
+= 더한 값 할당 a += 5 (a = a + 5)
-= 뺀 값 할당 a -= 5 (a = a - 5)
*= 곱한 값 할당 a *= 5 (a = a * 5)
/= 나눈 값 할당 a /= 5 (a = a / 5)
%= 나머지 값 할당 a %= 5 (a = a % 5)

예제

public class AssignmentOperators {
    public static void main(String[] args) {
        int a = 10;
        a += 5;
        System.out.println("a += 5: " + a);
        a *= 2;
        System.out.println("a *= 2: " + a);
    }
}

2.3 증감 연산자

증감 연산자는 변수 값을 1 증가 또는 감소시킬 때 사용됩니다.

연산자 의미 예제
++ 1 증가 a++, ++a
-- 1 감소 a--, --a

전위(Postfix)와 후위(Prefix) 차이

  • 전위 연산자: 연산 후 값을 반환. (예: ++a)
  • 후위 연산자: 값을 반환한 후 연산. (예: a++)

예제

public class IncrementDecrementOperators {
    public static void main(String[] args) {
        int a = 10;
        System.out.println("후위 증가: " + a++); // 출력 후 a가 1 증가
        System.out.println("전위 증가: " + ++a); // a가 증가 후 출력
    }
}

2.4 비교 연산자

비교 연산자는 두 값을 비교하여 결과를 true 또는 false로 반환합니다.

연산자 의미 예제
== 값이 같음 a == b
!= 값이 다름 a != b
> 크다 a > b
< 작다 a < b
>= 크거나 같다 a >= b
<= 작거나 같다 a <= b

예제

public class ComparisonOperators {
    public static void main(String[] args) {
        int a = 10, b = 20;
        System.out.println("a == b: " + (a == b));
        System.out.println("a != b: " + (a != b));
        System.out.println("a > b: " + (a > b));
    }
}

2.5 논리 연산자

논리 연산자는 불리언 값에 대해 논리적 연산을 수행합니다.

연산자 의미 예제
&& AND a && b
` `
! NOT !a

예제

public class LogicalOperators {
    public static void main(String[] args) {
        boolean a = true, b = false;
        System.out.println("a && b: " + (a && b));
        System.out.println("a || b: " + (a || b));
        System.out.println("!a: " + (!a));
    }
}

2.6 비트 연산자

비트 연산자는 숫자를 비트 단위로 연산합니다.

연산자 의미 예제
& AND a & b
` ` OR
^ XOR a ^ b
~ NOT ~a
<< 왼쪽 시프트 a << 2
>> 오른쪽 시프트 a >> 2

예제

public class BitwiseOperators {
    public static void main(String[] args) {
        int a = 5, b = 3;
        System.out.println("a & b: " + (a & b));
        System.out.println("a | b: " + (a | b));
    }
}

2.7 삼항 연산자

삼항 연산자는 조건에 따라 값을 선택합니다.

문법

조건식 ? 참일 때 값 : 거짓일 때 값;

예제

public class TernaryOperator {
    public static void main(String[] args) {
        int a = 10, b = 20;
        int max = (a > b) ? a : b;
        System.out.println("더 큰 값: " + max);
    }
}

2.8 instanceof 연산자

instanceof 연산자는 객체가 특정 클래스의 인스턴스인지 확인합니다.

예제

public class InstanceofOperator {
    public static void main(String[] args) {
        String str = "Hello";
        System.out.println(str instanceof String); // true 출력
    }
}

3. 연산자의 우선순위

Java의 연산자는 우선순위가 있으며, 우선순위에 따라 계산 순서가 결정됩니다. 필요에 따라 괄호를 사용하여 우선순위를 명시적으로 조정할 수 있습니다.

우선순위 연산자
1 (), [], .
2 !, ~, ++, --
3 *, /, %
4 +, -
... ...

4. 결론

Java에서 연산자는 코드 작성의 핵심 요소로, 다양한 작업을 수행할 수 있게 해줍니다. 각각의 연산자를 이해하고 적절히 사용하는 것은 효율적이고 가독성 높은 코드를 작성하는 데 필수적입니다. 이 글을 통해 연산자의 기본 개념부터 응용까지 폭넓게 이해하셨길 바랍니다.

반응형

+ Recent posts