gpt4 book ai didi

java - 保存生命游戏中的所有世代以供以后访问

转载 作者:行者123 更新时间:2023-12-01 16:40:31 25 4
gpt4 key购买 nike

我的生命游戏运行完美。我还有一个计数器显示当前生成(对于每次迭代 Generation++ )。

现在我希望能够访问并显示游戏过程中的任何一代。整个游戏由一个二维数组(Cell[][])组成。因此,每次迭代后,必须使用唯一的名称保存相应的数组。

但是如何在循环中多次保存数组呢?我无法将迭代编号添加到数组名称中,例如 Cell[][] cells+ Generation = ... 变为 cells0, cells1, cells2...数组。

另一个想法是,创建一个类生成并为每次迭代创建该类的一个新对象,但即使如此,对象生成的名称问题仍然存在(以便能够访问相应的对象,需要一个唯一的名称,例如 Generation13、 Generation154 ...)。

public class Generation {
private Cell[][] cells;

public Generation(Cell[][] cells) {
this.cells = cells;
}

public Cell[][] getCells() {
return cells;
}

public void setCells(Cell[][] cells) {
this.cells = cells;
}
}

有人有办法实现这一目标吗?我认为使用类生成最有意义,因为这样您还可以访问(get)构造函数(二维数组)进行显示。

最佳答案

制作一个 ArrayList<Cell[][]> 怎么样? ?所以,如果你想添加新一代,只需使用

arrayListOfCells.add(generation);

然后使用

访问它
arrayListOfCells.get(index);

关于java - 保存生命游戏中的所有世代以供以后访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61869404/

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