如何传对象

如何传对象

在java里面要交换两个数的值,最好按对象或者引用传递,因为按值传递无法成功改变两个数的值。
1:可以先建一个类,定义一个n,

package AK.homeWork;

public class test {
    int n;	
}

2:创建类的对象并调用n并且给值s输出

        test a1=new test();
		test b1=new test();
		a1.n=10;
		b1.n=20;
		System.out.println("q:"+a1.n+"\t"+b1.n);

3:创建一个交换方法,传进来的是test类的对象

public static void swap(test a,test b) {
		test tmp=new test();
		tmp.n=a.n;
		a.n=b.n;
		b.n=tmp.n;
	}

4:调用交换方法

swap(a1,b1);
		System.out.println("q:"+a1.n+"\t"+b1.n);

下面给整个代码

public class testx {
	public static void swap(test a,test b) {
		test tmp=new test();
		tmp.n=a.n;
		a.n=b.n;
		b.n=tmp.n;
	}
	public static void main(String[] args) {
		test a1=new test();
		test b1=new test();
		a1.n=10;
		b1.n=20;
		System.out.println("q:"+a1.n+"\t"+b1.n);
		swap(a1,b1);
		System.out.println("q:"+a1.n+"\t"+b1.n);
	}
}

上面的test类自己重新建一个就行,只要在一个包里面就行。
这里给一个我的分析图

在这里插入图片描述形式参数类型是引用参数类型,也称为传地址,在方法执行中,对形式参数的操作也就是对实际参数的操作,这个结果在方法结束后被保留了下来,所以方法执行中形式参数的改变会影响实际参数。

以上就是我目前的理解了。

发布了23 篇原创文章 · 获赞 12 · 访问量 1582

猜你喜欢

转载自blog.csdn.net/weixin_45607985/article/details/102539138
今日推荐