gpt4 book ai didi

java - java中按值传递和按引用传递的混淆

转载 作者:行者123 更新时间:2023-11-29 09:38:08 24 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
Is Java “pass-by-reference”?

您好,我开发了以下代码。在 swap 方法中,我交换了两个对象的引用。然后它会在调用的方法(这里是 swap())中更改,但在 main 方法中不会更改。为什么?

class Check
{

public void swap(PassByRefDemoMain obj1,PassByRefDemoMain obj2)
{

PassByRefDemoMain temp;
temp=obj1;
obj1=obj2;
obj2=temp;
System.out.println(obj1.id+ " "+ obj2.id);

}
}


public class PassByRefDemoMain {
int id;
PassByRefDemoMain(int id)
{
this.id=id;
}
public static void main(String[] args) {
PassByRefDemoMain obj1=new PassByRefDemoMain(10);
PassByRefDemoMain obj2=new PassByRefDemoMain(20);

Check obj=new Check();
obj.swap(obj1,obj2);

System.out.println(obj1.id + " " + obj2.id);

}

}

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com