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

java 关于传递参数的问题

2013-03-20 10:57 549 查看
其实一切类型的参数传递都是拷贝,所谓的传值只是针对java中的基本类型,而传递的地址只是针对非基本类型(string有点特殊)

public static
void main(String[] args) {
//
TODO Auto-generated method stub
String str1 =
"123";
String str2 =
"123";
StringBuffer sb = new StringBuffer("123");
Main main = new Main();
main.changeString(sb);
System.out.println(sb);
}

public void changeString(StringBuffer str) {
//只是将拷贝的地址复制为空,然后上面的输出不会为空
// str = null;
StringBuffer st=str;
//对拷贝地址的值进行了操作,由于拷贝地址的值和原对象的地址是相同的,所以当前对象所指向的变量值是同一个
st.append("21");
}
http://freej.blog.51cto.com/235241/168676/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: