為什么我使用iterator遍歷,只輸出了部分元素,而用foreach輸出是正常的?
??? /**
?? ? * 使用迭代器Iterator遍歷輸出list
?? ? * @param args
?? ? */
?? ?public void testIterator(){
?? ??? ?//創建iterator對象
?? ??? ?Iterator<Course> it=coursesList.iterator();
?? ??? ?while(it.hasNext()){
?? ??? ??? ?System.out.println("課程ID:"+it.next().getId()+"? 課程名稱:"+it.next().getName());
?? ??? ?}
?? ?}
2017-05-12
public void testIterator(){
//通過集合的iterator方法,取得迭代器的實例
Iterator it=coursesToSelect.iterator();
System.out.println("有如下課程待選(通過迭代器訪問):");
while(it.hasNext()){
Course cr=(Course)it.next();
System.out.println("課程:"+cr.id+":"+cr.name);
}
}
2017-05-12
it.next().getId() 和 it.next().getName() 分別進行兩次獲取
應該用一個對象 例如course = it.next()
system.out.printl(課程id" + course.getId() + ",課程名稱" + course.getName());