Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/374.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Junit实现了Iterable_Java_Junit_Linked List_Iterable - Fatal编程技术网

Java Junit实现了Iterable

Java Junit实现了Iterable,java,junit,linked-list,iterable,Java,Junit,Linked List,Iterable,我正在尝试对实现Iterable的类进行测试。当我去测试任何方法时,在itorator类中,比如hasNext(),next()。所以当我调用list.itorator().Next()时;不会发生任何事情,该节点是列表中的当前节点,而不是下一个节点。但是当我做ListIterator时,itrList=newListIterator(list);里面的代码可以工作。我正在调用公共迭代器迭代器(){返回新的ListIterator(this); 那么,我做得不对/抓不住的是什么? 谢谢你的帮助

我正在尝试对实现Iterable的类进行测试。当我去测试任何方法时,在itorator类中,比如hasNext(),next()。所以当我调用list.itorator().Next()时;不会发生任何事情,该节点是列表中的当前节点,而不是下一个节点。但是当我做ListIterator时,itrList=newListIterator(list);里面的代码可以工作。我正在调用公共迭代器迭代器(){返回新的ListIterator(this); 那么,我做得不对/抓不住的是什么? 谢谢你的帮助

public void test6() {
    List<String> list = new List<String>();

    list.addAfterCurrent("1");
    list.addAfterCurrent("2");
    list.addAfterCurrent("3");
    ListIterator itrList = new ListIterator(list);


    TextIO.putln(list.iterator().next()); // output is 1
    TextIO.putln(list.iterator().next()); // output is 1 
    TextIO.putln(itrList.next());         // output is 1
    TextIO.putln(itrList.next());         // now output is 2           
    assertEquals("1", list.getCurrent());
    assertEquals(3, list.size());

}
public void test6(){
列表=新列表();
列表。添加后电流(“1”);
列表。添加后电流(“2”);
列表。添加后电流(“3”);
ListIterator itrList=新的ListIterator(列表);
TextIO.putln(list.iterator().next());//输出为1
TextIO.putln(list.iterator().next());//输出为1
TextIO.putln(itrList.next());//输出为1
TextIO.putln(itrList.next());//现在输出为2
assertEquals(“1”,list.getCurrent());
assertEquals(3,list.size());
}

每次调用
list.iterator()
时,您都在创建一个新的迭代器。您希望保留相同的迭代器并多次调用其
next
方法,例如

Iterator itr = list.iterator();
assertEquals(1, itr.next());
assertEquals(2, itr.next());

每次调用
list.iterator()
时,您都在创建一个新的迭代器。您希望保留同一个迭代器并多次调用其
next
方法,例如

Iterator itr = list.iterator();
assertEquals(1, itr.next());
assertEquals(2, itr.next());

您每次都在创建一个新的迭代器,并从头开始。

您每次都在创建一个新的迭代器,并从头开始