黑马程序员技术交流社区
标题:
java中实参传递给形参,实参值会不会改变??
[打印本页]
作者:
乔玉吉
时间:
2012-3-10 00:52
标题:
java中实参传递给形参,实参值会不会改变??
本帖最后由 乔玉吉 于 2012-3-10 00:54 编辑
java中实参传递给形参,实参值会不会改变??如果传的是对象呢
public class J_Test
{
public static void main(String args[])
{
int i = 99;
mb_operate(i);
System.out.println(i+100);
}
static void mb_operate(int i)
{
i+=100;
}
}
作者:
房宝彬
时间:
2012-3-10 01:00
传对象进入的话,如果你改变他的引用,肯定实参不会变,如果你改变他引用的值,实参就会变..
作者:
贠(yun)靖
时间:
2012-3-10 01:16
不会改变,传参可以理解为赋值
实参a=1; 传到形式参数b上 其实就是b=a; 所以b=1; 实参还是1
而是对象的话 是传对象的内存地址的 实参引用a=0x0001地址 传给形参引用b b=0x0001地址
这样b和a都指向了 同一个对象
还有如果用匿名对象(new 类())传的话 就是只有形参b指向内存地址 即 b=0x0001 就相当于 类 b=new 类(); 了
这时候栈内存中只有一个变量
作者:
小白
时间:
2012-3-10 08:19
实参传的是值,对象传递的是应用变量中的内存地址!
作者:
王杰
时间:
2012-3-10 09:57
实参的值不会改变,因为进行的是值传递。
如果传递的是对象的话。其实我们传递的是对象在堆内存中的地址。
我们可以根据地址对该对对象中的内容进行修改。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2