gpt4 book ai didi

java - 迭代器打印链表

转载 作者:行者123 更新时间:2023-11-30 05:56:50 25 4
gpt4 key购买 nike

我在使用 foreach 显示 LinkedList 时遇到问题。

当我想显示我的 LikedList 时,列表中出现错误,告诉我必须使用迭代器。这是代码:

public class Set {

private LinkedList <Integer> elements;

public Set () {
this.elements = new LinkedList <Integer> ();
}

public static void main (String [] args) {
Set test = new Set ();
test.add (8);
test.add (2);
test.add (7);
for (int e: test) {

}
}

所以我使用了一个迭代器来显示,但一条消息告诉我,我的迭代器对于方法集未定义。

这是代码:

public class Set {

private LinkedList <Integer> elements;

public Set () {
this.elements = new LinkedList <Integer> ();
}

public static void main (String [] args) {
Set test = new Set ();
test.add (8);
test.add (2);
test.add (7);
Iterator <Integer> iterator = test.iterator ();
while (iterator.hasNext ()) {
System.out.println (iterator.next ());
}
}

如果你能帮助我,这对我会有很大帮助。

(我尝试在 Set () public 中定义“Iterator <Integer> iterator = this.elements.iterator (); ”,并以这种方式在手中调用它,但没有成功“while (iterator.hasNext ()) {
System.out.println (iterator.next ());
}
”)

预先感谢您,美好的一天

最佳答案

您的 Set 类需要实现可迭代接口(interface)

public class Set implements Iterable<Integer> {

private LinkedList<Integer> elements;

public Set() {
this.elements = new LinkedList<Integer>();
}

@Override
public Iterator<Integer> iterator() {
return elements.iterator();
}
}

关于java - 迭代器打印链表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53033091/

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