我最近开始学习java,发现python无法运行我构建的程序足够快。
我的阵列列表被称为So,它充满了类生物体的对象(该类具有称为免疫的属性)。我需要更改有机体对象的免疫力。
在Python中,要引用我只需使用列表的元素:
SO[index].immunity = AnInteger
但在Java中,这似乎不起作用。我如何在Java中做同样的事情?
如果您想要Organism
类的ArrayList
,则假设您实际上有一个Organism
是:
ArrayList<Organism> organisms = new ArrayList<>();
然后,您可以 add
有机体到ArrayList,然后访问它们:
organisms.get(<index>);
其中 <index>
是arraylist中元素的索引
改变索引3中有机体的不受欢迎财产的价值,以为是公开的,将完成:
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>);