본문 바로가기
IT/자바

[자바 예제] 임시 변수 없이 두 변수의 값 서로 바꾸기

by 모찌 2018. 8. 22.






안녕하세요. 저번 포스팅에서는 Temp를 사용하여 두 변수 값을 교환하는 방법에 대해 알아 보았습니다. 오늘은 임시 변수 없이 변수 두개만 사용하여 값을 교환하는 예제를 알아봅시다.




임시 변수 없이 두 변수의 값 교환하기


public class Ex1 {

public static void main(String[] args) {


int num1 = 1;

int num2 = 2;


System.out.println("num1 = " + num1 + " num2 = " + num2);


num1 = num1 + num2;     // 1 + 2 = 3   

num2 = num1 - num2;     //  3 - 2 = 1 

num1 = num1 - num2;     //  3 - 1 = 2  


System.out.println("num1 = " + num1 + " num2 = " + num2);

}

}




변수 num1, num2를 선언합니다. 

이 때, num1 의 값은 1, num2의 값은 2 입니다.


num1 = num1 + num2;  

num1 + num 2 = 1 + 2 = 3 이므로, num1에 3의 값을 저장합니다.


num2 = num1 - num2; 

num1의 값은 윗줄에서 3으로 저장되어 있습니다. 

num1 - num2 = 3 - 2 = 1 이 되므로, num2에 1이 저장 됩니다.


num1 = num1 - num2; 

현재 num1의 값은 3, num2의 값은 1 이 저장 되어 있습니다.

따라서, num1 - num2 = 3 - 1 = 2 가 됩니다. num1 의 값은 2가 저장됩니다.






결과

num1 = 1 num2 = 2

num1 = 2 num2 = 1







댓글