我写了一个小例子是交换两个Integer对象的值,在java中的参数如果为基本类型就是用传值调用,对象则是用引用调用是这样吗?我写的程序如下:
private static void swap(Integer value1, Integer value2) {
Integer temp;
temp = value1;
value1=value2;
value2=temp;
}
然后在main方法中调用:
Integer value1=new Integer(2222);
Integer value2=new Integer(3333);
swap(value1,value2);
System.out.println("value1--->"+value1);
System.out.println("value2--->"+value2);
可是打印出来的还是原来的值,没有交换啊?这是为什么?java中的引用该怎么用呢? |