黑马程序员技术交流社区
标题:
关于StringBuffer和String的问题,欢迎交流
[打印本页]
作者:
boom_pm2.5
时间:
2016-11-14 00:19
标题:
关于StringBuffer和String的问题,欢迎交流
上干货~
public class StringBuffer_YinYong {
public static void main(String[] args) {
String s = "heima";
System.out.println(s);
change(s);
System.out.println(s);
System.out.println("----------------------");
StringBuffer sb = new StringBuffer("heima");
System.out.println(sb);
change(sb);
System.out.println(sb);
}
private static void change(StringBuffer sb) {
sb.append("itcase");
}
private static void change(String s) {
s=s+"itcase";
}
}
如题:
请问一下,我今天在学习StringBuffer和String 作为形式参数 时, 他们的区别让我不是很能理解.
记得当时老师说的是,String 和StringBuffer 一个相当于基本数据类型做为形式参数进行 值得传递,
另外一个是传的址,
话是这么说,但是总觉得 String 作为形式参数接受值 的时候,它接收的难道不是一个 具体的 地址吗?
刚学到 String 类型的时候, 老师曾经说过.String s1 = "abc";
abc 这个字符串是在 方法区中开辟了一片区域,然后将 地址赋值 给了 s1 ,但是现在的问题就是,String
作为形式参数在接受,或者传递值得时候,难道不是传的方法区的地址吗?
求解
作者:
boom_pm2.5
时间:
2016-11-14 00:21
是在是不能理解啊
作者:
天秋雨
时间:
2016-11-14 10:35
string是传递的地址,buffer才是传的值。
作者:
X_iaY_u
时间:
2017-10-5 23:46
“问题就是,String作为形式参数在接受,或者传递值得时候,难道不是传的方法区的地址吗? ”是
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2