黑马程序员技术交流社区
标题: 哪位大神帮忙写下过程 怎么就打印这个结果呢 [打印本页]
作者: yangchao313 时间: 2013-8-7 20:06
标题: 哪位大神帮忙写下过程 怎么就打印这个结果呢
本帖最后由 yangchao313 于 2013-8-7 20:57 编辑
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);
}
}
打印结果是4,为什么呢 ?帮忙解释一下
作者: 肥猫 时间: 2013-8-7 20:52
大哥,你调用的方法没有返回值啊,方法执行完了直接出栈了,那么你输出语句就自动找到你上面定义的I=4输出.
作者: yangchao313 时间: 2013-8-7 20:56
哦 谢谢了
作者: 封号了... 时间: 2013-8-8 15:18
leftshift(int i, int j) 没返回值,主函数掉不调用一个效果,最后获取的还是主函数里的初始值!
作者: sergio 时间: 2013-8-8 17:52
{:soso_e123:}一个值类型也就是i = 4 ,j = 2这样的。leftshift(i, j)这个是引用类型的,两个不牵扯。i 的值不会改变还是4
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |