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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

public class ReDemo {
int a,b;
void rechange(ReDemo r1,ReDemo r2){
r1=r2;r1.a=230;r2.b=360;}
public static void main(String[]args){
ReDemo r1=new ReDemo();
r1.a=30;r1.b=70;
ReDemo r2=new ReDemo();
r2.a=50;r2.b=80;
System.out.println("方法调用前参数r1的值a="+r1.a+",b="+r1.b);
System.out.println("方法调用前参数r2的值a="+r2.a+",b="+r2.b);
r1.rechange(r1, r2);
System.out.println("方法调用后参数r1的值a="+r1.a+",b="+r1.b);
System.out.println("方法调用后参数r2的值a="+r2.a+",b="+r2.b);
}}
=======运行结果========
方法调用前参数r1的值a=30,b=70
方法调用前参数r2的值a=50,b=80
方法调用后参数r1的值a=30,b=70
方法调用后参数r2的值a=230,b=360
========运行结果========
是这样的,rechange方法里面说的是r1.a为什么结果值给到了r2.a那里呢,r1=r2又是 shenmmegui,当楼主把r1=r2改为r2=r1后,r1.a的值才给到了结果里的r1.a,文绉绉的课本写的一知半解,好像隐约看到一点东西,但不知怎么彻底去理解,表达,比较疑惑

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马