Java 변수 값 교환
두 개의 변수를 서로 값을 변환하여 출력한다.
예: 변수 x의 값 10, 변수 y의 값 20일 때, x=10와 y=20를 서로 교환하여 x=20, y=10로 출력한다
public class Logical1 {
public static void main(String[] args) {
int x = 10;
int y = 20;
System.out.println("x의 값: " + x);
System.out.println("y의 값: " + y);
{
int z;
z = x;
x = y;
y = z;
}
System.out.println("x 와 y 값 swap");
System.out.println("x의 값: " + x);
System.out.println("y의 값: " + y);
}
}
출력
x의 값: 10
y의 값: 20
x 와 y 값 swap
x의 값: 20
y의 값: 10
풀이
- int x; int y; 변수를 선언하였다.
- swap 용도로 사용할 int z;를 추가로 선언한다.
- 코드
z = x;
- swap 용도로 사용하는 변수 z를 x를 대입한다.
- 변수 z = 10 값을 갖게 한다.
- x=10, y=20, z=10
- 코드
x = y;
- x의 값을 z를 갖게 되었으므로 이제 x의 기존 값은 필요없다.
- x의 값을 y를 대입한다.
- x=20, y=20, z=10
- 코드
y = z;
- y의 값을 x의 값이었던 z를 대입한다.
- x=20, y=10, z=10
- 이후 코드 블록이 끝내 임시로 사용하던 변수 z를 메모리 반환을 해주도록 한다.