gpt4 book ai didi

java - 将另一个 vector 中包含的值添加到一个 vector 中...一个 vector 中的更改会反射(reflect)在另一个 vector 中吗?

转载 作者:行者123 更新时间:2023-12-02 08:04:31 28 4
gpt4 key购买 nike

我有以下两个Vector java 中的对象。

Vector<SomeClass> obj1;
Vector<SomeClass> obj2;

类 SomeClass 有一个 int 变量 a .

假设obj2为空且 obj1有一些元素在里面。假设我这样做:

obj2.add(obj1.firstElement()); 
obj2.firstElement().a = 10; // obj2.firstElement() will be the object that was
//added above because obj2 was empty at first

这会改变 obj1.firstElement() 中 a 的值吗?也是吗?

基本上我只是想知道这些是否 Vector操作是通过引用或值完成的。我的猜测是它们是通过引用完成的,此更改将反射(reflect)在 obj1.firstElement() 中也。

最佳答案

你是对的,引用被复制(浅复制),因此更改也会反射(reflect)在原始 vector 中。

关于java - 将另一个 vector 中包含的值添加到一个 vector 中...一个 vector 中的更改会反射(reflect)在另一个 vector 中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8371414/

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