日期:2014-05-20  浏览次数:20674 次

JAVA如何实现C++的引用.
public   class   Swap
{
void   swap(Integer   a,Integer   b)
{
Integer   i   =   a;
a   =   b;
b   =   i;
System.out.println(a+ "     "+b);
}
public   static   void   main(String   args[])
{
Swap   app   =   new   Swap();
Integer   a   =   new   Integer(10);
Integer   b   =   new   Integer(20);
app.swap(a,b);
System.out.println(a+ "     "+b);
}
}

C++可以使用swap(&a,&b)来实现a,b的交换,但在JAVA里却不可以,怎样才可以实现类似C++的引用..

------解决方案--------------------
所有的包装类型, Integer Double String 等
都是不可变的,任何试图改变的方法都是返回一个新的对象