[Java] 자바 101 강의 - #4 (대입 연산자, assignment operator)

    대입 연산자(Assignment Operator)

    대입 연산자를 변수에 값을 대입할 때 사용하는 연산자입니다. 연산은 기본적으로 오른쪽에서 왼쪽으로 결합하게 되며, 대입을 할 때 이전에 배운 산술 연산자를 결합한 대입 연산자를 활용하기도 합니다.

     

    지금 모든 대입 연산자를 알아봤자 나중에 어차피 까먹기 때문에 중요하고, 자주 활용할 수 있는 연산자부터 알아보도록 하겠습니다.

     

    자바 101 강의 - 대입 연산자, assignment operator

     


     

    대입 연산자의 종류

    대입 연산자 설명 예시
    = 오른쪽의 값을 왼쪽에 대입합니다. a = a + 1;
    += 오른쪽의 값을 더해주면서 왼쪽에 대입합니다. a += 1;
    -= 오른쪽의 값을 빼주면서 왼쪽에 대입합니다. a -= 1;
    *= 오른쪽의 값을 곱해주면서 왼쪽에 대입합니다. a *= 2;
    /= 오른쪽의 값을 나누면서 왼쪽에 대입합니다. a /= 2;
    %= 오른쪽의 값을 나눈 후 나머지는 왼쪽에 대입합니다. a %= 2;

     

    그 외 여러가지 대입 연산자가 있으나 활용성 부분에서 많이 활용하지 않으며 웹개발자 등을 할 경우 평생 사용하지 않는 경우도 있으니, 이정도만 외우셔도 큰 문제는 없을 것입니다. 참고로 연산과 동시에 대입하는 대입 연산자의 경우 복합 대입 연산자라 하기도 합니다.

     

    그럼 위 내용을 코드로 보면서 이해를 해보도록 하겠습니다.

     

     

    대입 연산자 예시

    public class Main {
    
        public static void main(String args[]) throws IOException {
            int a = 3;
            
            a = a + 1;
            System.out.println(a);
    
            a += 1;
            System.out.println(a);
    
            a -= 1;
            System.out.println(a);
    
            a *= 2;
            System.out.println(a);
    
            a /= 2;
            System.out.println(a);
    
            a %= 2;
            System.out.println(a);
        }
    }

    a의 값을 3으로 초기화를 시킨 후, 각각의 대입 연산자를 실행해보았습니다.

     


     

    예시 정답

    4
    5
    4
    8
    4
    0

     

    위 예시를 순서대로 풀어보도록 하겠습니다.

    1. a = a + 1;은 a = 3 + 1;이 되며, 이를 왼쪽 a의 값에 대입을 하니 첫번째 출력은 4가 됩니다.
    2. a가 4인 상황에서 a+=1은 1의 값을 a에 대입하라는 의미이니 5가 됩니다.
    3. a가 5인 상황에서 a-=1은 1의 값을 a에 빼라는 의미이니 다시 4가 됩니다.
    4. a가 4인 상황에서 a*=2는 2의 값을 a에 곱하라는 의미이니 8이 됩니다.
    5. a가 8인 상황에서 a/=2는 2의 값으로 a를 나누라는 의미이니 4가 됩니다.
    6. a가 4인 상황에서 a%=2는 2의 값으로 나눈 후, 나머지를 a에 대입하라는 의미이니 0이 됩니다.

     

    즉 위의 내용은 다음과 코드와 동일합니다.

    public class Main {
    
        public static void main(String args[]) throws IOException {
            int a = 3;
    
            a = a + 1;
            System.out.println(a);
    
            a = a + 1;
            System.out.println(a);
    
            a = a - 1;
            System.out.println(a);
    
            a = a * 2;
            System.out.println(a);
    
            a = a / 2;
            System.out.println(a);
    
            a = a % 2;
            System.out.println(a);
        }
    }

     

    산술 연산과 결합된 대입 연산자의 경우 변수를 숨기면서 공식을 축약을 한 것 뿐입니다. 복합 연산자를 사용하면 식이 간결해 질 순 있지만, 오히려 코드를 읽기가 더 힘들어질 수 있는 단점도 있습니다.

     

     

    반응형

    댓글

    Designed by JB FACTORY