您的位置:首页 > 编程语言 > Java开发

Java方法参数传递方式总结

2016-04-17 18:44 344 查看
该篇文章根据知乎用户[Intopass]回答内容修改而来。

https://www.zhihu.com/question/31203609

首先结论是

八大基本数据类型按值传递。

其他对象按引用传递。

方法的传递其实就是一个变量赋值给另一个变量的过程。基本数据类型赋值传递的是值本身,其他对象赋值传递的是引用。

结果验证

首先看第一个程序(按值传递):

int num = 100;
public void method(int i){
i = 0;
}
method(num);
System.out.println(num);


在这里num的值没有被改变。还是原来的值。



第二个程序(按引用传递,不改变自身):

String str = "hello";
public void mathod(String s){
s = "world";
}
method(str);
System.out.println(str);


输出结果还是hello。



第三个程序(按引用传递,改变自身):

StringBuffer buffer= new StringBuffer("Hello");
public void method(StringBuffer sb){
sb.apend("World");
}
method(buffer);
System.out.println(buffer);


输出HelloWorld。



2016年4月17日18:58:54

周日

写于宿舍
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: