将它们分类为不同的数据结构会容易得多。我看到course有一个
getCourseName()方法,我假设它将返回一个String对象。尝试使用
Map<String, List<Course>>代替。
排序方法如下所示:
public Map<String, List<Course>> getSourtedLists(){ Map<String, List<Course>> result = new HashMap<String, List<Course>>(); while(courseItr.hasNext()) { course next = courseItr.next(); if (!result.containsKey(next.getCourseName())) { result.put(next.getCourseName(), new ArrayList<Course>()); } result.get(next.getCourseName()).add(next);}另外,你真的不想叫
courseItr.remove();这消除了course从底层集合对象,这意味着你的方式正计划这样做会空出
courseList从你的
CourseLister对象。



