我的界面有问题。我有一个像这样的Iterator接口:
package com.wrox.algorithms.iteration;
import com.wrox.algorithms.lists.IteratorOutOfBoundsException;
public interface Iterator {
public void first();
public void last();
public void isDone();
public void next();
public Object current() throws IteratorOutOfBoundsException;
}
之后我创建测试类并在空列表中测试迭代:
package com.wrox.algorithms.lists;
import com.wrox.algorithms.iteration.Iterator;
.....
public void testForwardIteration() {
Lists list = createList();
Iterator iterator = list.iterator(); // <- ERROR
}
我收到此错误:
类型不匹配:无法从java.util.Iterator转换为com.wrox.algorithms.iteration.Iterator
你知道我的错误在哪里吗?感谢您的支持!
答案 0 :(得分:3)
list.iterator()返回java.util.Iterator,而不是com.wrox.algorithms.iteration.Iterator
编辑:刚刚注意到你有一个&#34;列表&#34;而不是&#34; List&#34;。您还需要java.util.List中的List。不要创建自己的列表/列表
答案 1 :(得分:0)
如果两个人姓名相同,那并不意味着你可以假装他们是同一个人。他们仍然是两个独立的人。你可以成为两者的朋友,但是如果你混淆起来,他们会对你很生气。
同样,如果两个接口名为Iterator
,这并不意味着您可以假装它们是相同的接口。 java.util.Iterator
和com.wrox.algorithms.iteration.Iterator
是两个独立的接口。你可以同时使用它们,但如果你混淆它们,编译器会对你大喊大叫。