본문 바로가기
Study/JAVA

[Java] 3-2. 단항 연산자

by jeongwle 2022. 8. 30.
728x90
반응형

 

 

1. 증감 연산자 ++ --

증감연산자는 피연산자에 저장된 값을 1 증가 또는 감소시킨다. 증감 연산자의 피연산자로 정수와 실수 모두 가능하나 상수는 불가능하다. 대부분의 연산자는 피연산자의 타입이나 값을 변경하지 않는다. 오직 대입 연산자와 증감 연산자만 피연산자의 값을 변경한다.

일반적으로 단항 연산자는 피연산자의 왼쪽에 위치하지만 증감 연산자는 왼쪽, 오른쪽 모두 가능하다. 피연산자의 왼쪽에 위치한 증감연산자의 경우 전위형(prefix), 오른쪽에 위치한 경우 후위형(postfix)이라 한다. 전위형과 후위형 모두 피연산자의 값을 1 증가 혹은 감소시킨다. 하지만 수식이나 메서드 호출에 포함된 경우 결과가 달라진다. 전위형은 값이 참조되기 전에 피연산자의 값을 증가 혹은 감소시키고 후위형은 값이 참조된 후에 피연산자의 값을 증가 혹은 감소시킨다.

public class OperatorEx2 {
    public static void main(String[] args) {
        /*
        수식에 포함될 경우 증감연산자 전위와 후위의 차이
         */
        int i = 5, j = 0;

        j = i++;
        System.out.println("j=i++; 실행 후, i =" + i + " j =" + j);
        // j=i++; 실행 후, i = 6, j = 5

        i = 5;
        j = 0;

        j = ++i;
        System.out.println("j=++i; 실행 후, i =" + i + " j =" + j);
        // j=++i; 실행 후, i = 6, j = 6
    }
}​


증감연산자를 사용하면 코드가 간결해지지만, 지나치게 사용하면 코드가 복잡해져서 이해하기 어려워진다.
x가 5일 경우 x = x++ - ++x;
이렇게 작성하는 것은 바람직하지 않다. 하나의 식에서 증감연산자의 사용을 최소화하고, 식에 두 번 이상 포함된 변수에 증감 연산자를 사용하는 것은 피해야 한다.

 

2. 부호 연산자 + -

부호 연산자 - 는 피연산자의 부호를 반대로 변경환 결과를 반환한다. 부호 연산자 +는 하는일이 없고 쓰이는 경우도 거의 없다. 형식적으로 추가해 놓은 것 뿐이다. 부호 연산자는 boolean형과 char형을 제외한 기본형에만 사용할 수 있다.

 

이 두 가지 이외에도 단항 연산자가 더 있다. 하지만 책에서는 5-1 논리 연산자에서 논리부정 연산자 !를, 5-2 비트 연산자에서 비트전환 연산자 ~를 설명한다고 한다.

728x90
반응형

'Study > JAVA' 카테고리의 다른 글

[Java] 4. 조건문과 반복문  (0) 2022.08.31
[Java] 3-3,4,5,6. 산술 & 비교 & 논리 & 그 외 연산자  (2) 2022.08.30
[Java] 3-1. 연산자  (0) 2022.08.30
[Java] 2-5. 형변환  (0) 2022.08.03
[Java] 2-2. 변수의 타입  (0) 2022.08.02

댓글