问题描述
老师留的作业题,实在是头疼。。。。importjava.util.*;publicclassController{privateLinkedList<Event>eventList=newLinkedList<Event>();publicvoidaddEvent(Eventc){eventList.add(c);}publicvoidrun(){LinkedList<Event>eventListCopy=newLinkedList<Event>(eventList);ListIterator<Event>it=eventListCopy.listIterator();while(it.hasNext()){Evente=it.next();e.action();//action()函数会调用addEvent()函数添加元素System.out.println(e.description());//输出状态}}}
主函数:publicstaticvoidmain(String[]args){GreenhouseControlsgc=//类GreenhouseControls继承自ControllernewGreenhouseControls();longtm=System.currentTimeMillis();gc.addEvent(gc.newRestart(tm));gc.run();}
=====================================================action()函数利用addEvent()添加一系列元素但是在while()中却只能输出第一个元素,为什么?=====================================================参考资料:《ThinkinginJava4th》(中文版)第11章练习13
解决方案
解决方案二:
人工置顶
解决方案三:
在你的另一个贴回答了http://topic.csdn.net/u/20100507/15/ab3eb59f-cc9e-4eab-ba44-8c506c523045.html?seed=1567468309&r=65254384#r_65254384