黑马程序员技术交流社区
标题:
输出结果为什么是43?
[打印本页]
作者:
Robber
时间:
2016-1-19 19:39
标题:
输出结果为什么是43?
public class TestDemo3 {
static int X = 3;
public static <V> void main(String[] args) {
new TestDemo3().go(X);
System.out.print(X);
}
void go(int x) {
System.out.print(++x);
}
}
作者:
擎天柱
时间:
2016-1-19 23:14
传参问题。
作者:
酱油
时间:
2016-1-20 00:02
go方法里面是传递的值,并不能改变main方法里面的X的值、可以去看一下值传递和引用传递的区别,
作者:
bestcaptain
时间:
2016-1-20 00:06
虚拟机启动之后从main函数入口进入后执行This.go(3),接收的参数是局部变量,++x=4,然后打印4,在运行下一句代码,打印本类中的X。没有换行所以结果是43。
作者:
梁志斌
时间:
2016-1-20 01:36
没换行~~
作者:
hansnowqiang
时间:
2016-1-20 09:21
基本类型传值,引用类型传地址
作者:
我爱睡觉
时间:
2016-1-20 15:29
因为你 吧X的值给了x,x的值改变 X的值不改变 注意大小写
引用传递和值传递
作者:
liuxiaoye
时间:
2016-1-20 21:44
java是值传递,所以X的值没有改变
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2