我正在为大学做一些课程,我真的应该知道这一点,但我不确定如何更新存储在 HashMap 中的对象。
我有一个抽象的“用户”类,它扩展到“客户”和“员工”类,其实例存储在名为“mapUsers”的 HashMap 中。
我认为可以完成的方法是将要修改的元素保存为temp“用户”对象,在此临时实例上,我可以以任何必要的方式修改该对象。
我真正的问题是,这会更新存储在 HashMap 中的对象还是我必须删除存储在 HashMap 中的元素并替换为修改后的元素temp实例。
有没有更简单的方法来做到这一点,我想也许是这样的
HashMap.get(index).performOperation();
类似的东西,我可以在不删除元素的情况下执行操作。
自从你的HashMap
保存引用,执行以下操作:
Person p = new Person();
p.setName("John");
hashMap.put(1, p);
p.setName("Jack");
也会更改里面的名称HashMap
,因为两个引用都指向同一件事。
或者,假设p
已经在HashMap
:
Person p = hashMap.get(1);
p.setName("Jack");
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)