看到贴吧这么水,是时候问哈以下俩方法到底哪个是值传递
java吧
全部回复
仅看楼主
level 5
升级很慢的说
楼主
方法1:String functionA(String a){ a=a+"a";return a;}
方法2:String functionB(String b){String a=b;a=a+"a";return a;}
1是值传递还是引用传递?2是值传递还是引用传递?
2014年12月10日 13点12分
1
level 5
升级很慢的说
楼主
自顶。
2014年12月10日 13点12分
2
level 8
清骏
对String对象来说,值传递还是引用传递,有区别吗?反正你也改不了值
2014年12月10日 13点12分
3
清骏
两个return都是引用传递吧。
2014年12月10日 13点12分
升级很慢的说
回复 夤夜扁舟子 :难道不该是值传递
2014年12月10日 13点12分
清骏
回复 升级很慢的说 :稍等,我写段代码判断一下。
2014年12月10日 13点12分
level 5
升级很慢的说
楼主
那就值传递了咯。
2014年12月10日 13点12分
4
level 11
拯救司马
java 里只有值传递
2014年12月10日 13点12分
5
level 14
chendy560
只有值传递,木有引用传递
2014年12月10日 13点12分
6
level 8
清骏
运行结果是两个true,两个 String都指向同一个对象
2014年12月10日 13点12分
7
清骏
所以两次return的都是对字符串的引用。
2014年12月10日 13点12分
升级很慢的说
回复 夤夜扁舟子 :louzhuispig我英文不好,不要忽悠我
2014年12月10日 13点12分
level 10
jay123541
只有值传递,木有引用传递
2014年12月10日 13点12分
8
level 8
清骏
【值传递是什么】
传递的参数是值的拷贝传递,也就是说传递后就互不相关了
【引用传递是什么】
传递的参数是按引用进行传递,其实传递的是引用的地址,也就是变量所对应的内存空间的地址
-----------------------------------------
如果是值传递,用==判断应该是false
2014年12月10日 13点12分
9
level 5
升级很慢的说
楼主
我擦
2014年12月10日 13点12分
10
1