A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

烟海 发表于 2014-8-11 21:49
跟StringBuffer 和append都有关系的。。。。
仔细看看吧 。。。

好吧,算了还是不懂。。。

x=y 就是直接赋值了把?结果是22 12 ,为什么?

  1. public static void main(String[] args)
  2.                 {
  3.                         int a=1;
  4.                         int b=2;
  5.                         show(a,b);
  6.                         System.out.println(a);
  7.                         System.out.println(b);
  8.                 }
  9.                 public static void show(int x,int y)
  10.                 {
  11.                         x=y;
  12.                         System.out.println(x);
  13.                         System.out.println(y);

  14.                 }
复制代码

回复 使用道具 举报
太好了  学习下
回复 使用道具 举报
如果这里不用字符串缓冲区,用字符串结果就不一样了吧。
回复 使用道具 举报
kakasa 发表于 2014-8-11 22:37
好吧,算了还是不懂。。。

x=y 就是直接赋值了把?结果是22 12 ,为什么?

因为是void类型。。。没有return值。。所以show方法里面的。。在值上面。。和外面没有关系。。。
回复 使用道具 举报
烟海 发表于 2014-8-12 21:34
因为是void类型。。。没有return值。。所以show方法里面的。。在值上面。。和外面没有关系。。。 ...

你的代码不也没有返回值么。。这又跟返回值有啥关系、

崩溃 听不懂你的解释 我还是回去好好看书了。。。

回复 使用道具 举报
看一下答案
回复 使用道具 举报
呃?没看出什么特别的地方
回复 使用道具 举报
学习学习!!!!
回复 使用道具 举报
来学习拉
回复 使用道具 举报
形参传递有点迷糊
回复 使用道具 举报
本帖最后由 heshaosheng 于 2016-1-5 16:04 编辑

对象引用传递
回复 使用道具 举报
代码一重点在于show()方法中的s2=s1,就是说s2的对象其实已经指向了s1,所以show方法中的最后操作的对象都是s1对象的值,main主题方法中的s2还是原来的对象。
回复 使用道具 举报
回复 使用道具 举报
12345
您需要登录后才可以回帖 登录 | 加入黑马