我们通过两个例子来了解java方法的参数传递机制
TestPrimitiveTransfer.java
源代码如下

public class TestPrimitiveTransfer 
{
	public static void swap(int a,int b)
	{
		//下面三行代码实现a,b变量的值交换
		//定义一个临时变量来保存a变量的值
		int tmp=a;
		a=b;
		//把临时变量tmp的值赋给a
		b=tmp;
		System.out.println("swap方法里,a的值是"+a+",b的值是"+b);
	}
	public static void main(String[] args) 
	{
		int a=6;
		int b=9;
		swap(a,b);
		System.out.println("交换后,实参a的值是"+a+",实参b的值是"+b);
	}
}

效果如下
java方法的参数传递
同时TestReferenceTransfer.java
源代码如下

public class TestReferenceTransfer 
{
	public static void swap(DataWrap dw)
	{
		//下面三行代码实现dw的a,b属性值交换
		//定义一个临时变量来保存dw对象的a属性的值
		int tmp=dw.a;
		dw.a=dw.b;
		dw.b=tmp;
		System.out.println("swap方法里,a属性的值是"+dw.a+";b的值是"+dw.b);
	}
	public static void main(String[] args) 
	{
		//DataWrap类在DataWrap.java里面
		DataWrap dw=new DataWrap();
		dw.a=6;
		dw.b=9;
		swap(dw);
		System.out.println("交换结束后,a属性的值是"+dw.a+";b属性的值是"+dw.b);
	}
}

其中的DataWrap类在DataWrap.java里面,源代码如下

public class DataWrap
{
	public int a;
	public int b;
}

运行效果图如下
java方法的参数传递机制

随机文章

360搜索突破15%也推onebox,百度,你怎么看
360搜索突破15%也推onebox,百度,你怎么看

Spill将其“同情引擎”扩展至高中生和研究生
Spill将其“同情引擎”扩展至高中生和研究生

貌似twitter的手机客户端要增加广告了
貌似twitter的手机客户端要增加广告了

Java基础第十八讲:异常处理(二)
Java基础第十八讲:异常处理(二)

wordpress3.5后台HTML编辑器添加快捷标签按钮
wordpress3.5后台HTML编辑器添加快捷标签按钮

相关文章

忘记Google APP(谷歌企业邮箱、日历等)账号密码解决方案
忘记Google APP(谷歌企业邮箱、日历等)账号密码解决方案

oppo(欧珀)手机刷机图文教程
oppo(欧珀)手机刷机图文教程

QQ电脑管家的Q盘登陆超时
QQ电脑管家的Q盘登陆超时

Java基础第十讲:面向对象基础(四)
Java基础第十讲:面向对象基础(四)

AngularJS的controllerAs常见用法
AngularJS的controllerAs常见用法

wordpress3.5后台HTML编辑器添加快捷标签按钮
wordpress3.5后台HTML编辑器添加快捷标签按钮

内容分享:道招
本文链接:java方法的参数传递机制
道招声明:除特别标注或作者不详外,本站所有文章均为原创,转载请注明。欢迎共同关注互联网!