我有一个将字符串键映射到自定义 City 类的 TreeMap。以下是它的实例化方式:
TreeMap<String, City> nameDictionary = new TreeMap<String, City>(new CityNameComparator());
CityNameComparator 实现:
public class CityNameComparator implements Comparator<String>
{
public int compare (String c1, String c2) {
return c1.compareTo(c2);
}
}
我有一个方法返回一个迭代器,它应该以 key-ascii 顺序遍历映射:
public Iterator<City> getNameIterator(){
return nameDictionary.values().iterator();
}
由于某种原因,这些值按照它们添加到 TreeMap 的顺序返回。有任何想法吗?