Java us()(参见答案中引用的文本)这与Perception的答案不一样吗? LinkedList<Schedule> queue = new LinkedList<Schedule>(schedules); int origSize

Java us()(参见答案中引用的文本)这与Perception的答案不一样吗? LinkedList<Schedule> queue = new LinkedList<Schedule>(schedules); int origSize ,java,iterator,linked-list,Java,Iterator,Linked List,us()(参见答案中引用的文本)这与Perception的答案不一样吗? LinkedList<Schedule> queue = new LinkedList<Schedule>(schedules); int origSize = queue.size(); int currCount = 0; ListIterator<Schedule> iterator = queue.listIterator(); while (iterator.hasNext()


us()(参见答案中引用的文本)这与Perception的答案不一样吗?
LinkedList<Schedule> queue = new LinkedList<Schedule>(schedules);
int origSize = queue.size();
int currCount = 0;
ListIterator<Schedule> iterator = queue.listIterator();
while (iterator.hasNext()) {
  ++currCount;
  if (currCount >= origSize) {
    break; // reached the end of the original collection
  }
  Schedule schedule = iterator.next();
  if(condition)
    iterator.add(new Schedule());
} 
LinkedList<Schedule> queue = new LinkedList<Schedule>(schedules);
LinkedList<Schedule> addQueue = new LinkedList<Schedule>();
ListIterator<Schedule> iterator = queue.listIterator();
while (iterator.hasNext()) {
  Schedule schedule = iterator.next();
  if(condition)
    addQueue.add(new Schedule());
} 
queue.addAll(addQueue);
public void addWork(Scheduler scheduler)
{
 synchronized(scheduler)
 {
  queue.addLast(scheduler);
 }
}
public synchronized Scheduler getWork()
{
  return queue.removeFirst();
}
LinkedList<Schedule> list;

for (int i = 0; i < list.size(); i++) {
   final Schedule schedule = list.get(i);
   if(condition)
       list.add(new Schedule());
}
LinkedList<Schedule> queue = new LinkedList<Schedule>(){{add(new Schedule());add(new Schedule());add(new Schedule());}};
int i = 0;
// queue.size() is evaluated every iteration
while (i < queue.size()) {
    Schedule schedule = queue.get(i);
    if(i++ % 2 == 0)
        queue.add(new Schedule());
}
System.out.println(queue.size());