public class TestPsss
{
public void change(int a)
{
a=100;
}
public static void main(String[] args)
{
int pass=50;
TestPass p=new TestPass();
System.out.println(pass);
p.change(pass);
System.out.println(pass);
}}
请问结果是什么,为什么?
{
public void change(int a)
{
a=100;
}
public static void main(String[] args)
{
int pass=50;
TestPass p=new TestPass();
System.out.println(pass);
p.change(pass);
System.out.println(pass);
}}
请问结果是什么,为什么?
50
刚开始学java,但是根据java的设计思想,应该都是50。
可否举个例子
因为a是个局部变量不会改变pass的值!只是改变它自己的值!
{
int pass=50;
TestPass p=new TestPass();
System.out.println(pass);
p.change(pass);
System.out.println(pass);
}==============================================================
100%的都知道第一个肯定是50
第二个有可能初学者会搞不清楚 不敢肯定结果
如果把程序里的方法改成
public int change(int a)
{
a=100;
return a; }System.out.println(change(pass));
应该会比较理解些!
Java 不存在引用传递 只有值传递!