我正在创建一个A Star搜索算法来解决8个拼图板,我已经在ArrayList中列出了所有的Board对象类。我的问题是我需要在每个Board对象中运行方法,以便让我检查它们是否已达到目标,获取董事会信息以及与此类似的其他功能。
问题是我在几个小时的互联网搜索后找不到办法来解决这个问题,我尝试使用迭代器来完成这个看似正确方向的工作,但是我无法让它工作但是我对他们没有任何经验。
任何帮助都会有很大的帮助。
public class Solve8Puzzle {
ArrayList startNode;
ArrayList nodes;
public Solve8Puzzle() {
startNode = new ArrayList();
nodes = new ArrayList();
}
public boolean checkGoalNodes() {
while( currently selected node has next ) {
run current node goal check
}
}
}
答案 0 :(得分:4)
List<StartNode> startNode = new ArrayList<StartNode>();
.......................
for (StarNode node : starNodes) {
// do what you want with the node
}
其他可能性
for (Iterator<StarNode> it = starNodes.iterator(); it.hasNext(); ) {
StarNode node = it.next();
// do what you want with the node
}