我正试图为我的二进制搜索树实现一个迭代器类。(更准确地说,这是一个KD树,但我认为这不会改变太多(。我希望迭代器按照树的顺序遍历。我有一个arrayList,它包含按"顺序"排列的叶节点,我希望迭代器按此顺序迭代这些叶节点。如何使用此arrayList来实现next((方法?
我尝试在Iterator类中创建一个名为index的int字段。然后我的next((方法会将索引增加1,并返回arrayList.get(index(。然而,这似乎不起作用。
使用arrayList来实现next((是不必要的,但它似乎是最简单的方法。如果有一种方法可以通过arrayList实现这一点,那将是首选。这可能吗?如果没有,欢迎任何建议!感谢
您可以使用迭代器((方法为列表创建迭代器。
// Create and populate the list
ArrayList<String> list = new ArrayList<>();
list.add("Hello");
list.add("World");
// Displaying the list
System.out.println("The list is: "+ list);
// Create an iterator for the list
// using iterator() method
Iterator<String> iter = list.iterator();
while (iter.hasNext()) {
System.out.print(iter.next() + " ");
}