JAVA에서 SWAP함수 관련 질문입니다.
글쓴이: canuyes / 작성시간: 금, 2014/11/14 - 5:52오후
안녕하세요?
C++에서 자바로 넘어가는중인 학생입니다.
JAVA에서 SWAP함수 관련하여 질문올립니다.
아주 간단하게 비약하면, 아래와 같은 상황입니다.
class Data { int a; Data(int a) { this.a = a; } } public class Test { static void mySwap(Data d1,Data d2) { // 질문 시작 int tmp = d1.a; d1.a = d2.b d2.b = tmp; // 질문 종료 } public static void main(String args[]) { Data d1 = new Data(1); Data d2 = new Data(2); // 질문 시작. mySwap(d1,d2); // 질문 종료 } }
즉, 두 참조변수를 매개변수로 받아 두 참조객체를 swap하려 합니다.
위와 같이 Data 클래스의 멤버변수 수가 적다면 상관 없지만, 멤버변수의 수가 많다면 굉장히 비효율적일 것 같습니다.
두 참조변수의 값을 서로 교환하려면 어떻게 해야하나요?
p.s. 되도록 두 참조변수를 갖는 새 클래스 작성이나, 배열로 파라미터를 넘기는 방식은 피하고 싶습니다.
Forums:
보자마자
보자마자 https://kldp.org/node/119844 가 떠오르네요.
Java 를 언급한 댓글과 그에 대한 덧글도 있으니 차분하게 읽어보세요.
댓글 달기