黑马程序员技术交流社区
标题:
结果是几啊
[打印本页]
作者:
杨立考
时间:
2012-9-25 21:36
标题:
结果是几啊
public class Test
{
public static void leftshift(int i, int j)
{
i+=j;
}
public static void main(String args[])
{
int i = 4, j = 2;
leftshift(i, j);
System.out.println(i);
}
}
作者:
王玉岩
时间:
2012-9-25 21:39
4
有什么问题么
作者:
杨卫腾
时间:
2012-9-25 21:40
这个输出的当然是 4, 虽然你在那个函数中进行了修改但是哪个是局部变量,
不是成员变量i d的改变。
要是你学过C语言的话,结果是这样的。
作者:
魏亮
时间:
2012-9-25 22:41
这个一开始我也有过疑问,我是这样想的。。
leftshift 函数会在栈内存中开辟空间计算,可已经完后他没有返回计算结果给主函数,
随着这个函数完,函数也消失了,
而主函数却没有得到计算结果,所以i 的结果还是4
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2