如何在Java中引用ArrayList中的元素

时间:2017-12-03 14:51:08

标签: java arraylist

我最近开始学习Java后发现Python无法运行我正在快速构建的程序。

我的ArrayList被称为SO,它充满了类Organism的对象(这个类有一个名为immunity的属性)。我需要更改我的Organism对象的免疫属性。

在Python中,要引用列表的元素,我只需使用:

SO[index].immunity = AnInteger

但在Java中这似乎不起作用。如何在java中做同样的事情?

1 个答案:

答案 0 :(得分:1)

如果您想要ArrayList Organism类来定义它,假设您实际上有一个类Organism

ArrayList<Organism> organisms = new ArrayList<>();

然后你可以add生物到ArrayList,并访问它们:

organisms.get(<index>);

其中<index>是ArrayList

中元素的索引

要更改索引3中有机体的inmunity属性的值,假设它是公共的,将会完成:

organisms.get(3).inmunity = <new value>;

注意: get()仅从列表中检索objec。绝不会改变任何东西。当为社区分配新值时,就会发生这种变化。

最后一行也可以这样写:

// Retrieve the object in the list
Organism org = organisms.get(3);

// Change the inmunity value
org.inmunity = <new value>;

正如@Zabuza在评论中所说,如果你需要用不同的实例替换列表中的有机体,你必须使用:

organisms.set(3,<another Organism instance>);