1

HashSet 对象 ct_set 城市对象

如何使用 ct_set 中的元素按照我的填充比较器的顺序初始化 ProrityQueue 对象 ct_pq

4

1 回答 1

0

PriorityQueue用你的创建Comparator,然后调用addAll

HashSet<City> cities = ...;

PriorityQueue<City> queue = new PriorityQueue(new CityComparator());
queue.addAll(cities);

请注意,如果您真的有一个HashSet<Object>代替(您的问题还很不清楚),您可能应该尝试更改您的代码,以便您确实有一个HashSet<City>代替。或者你总是可以只转换每个元素:

HashSet<Object> cities = ...;
PriorityQueue<City> queue = new PriorityQueue(new CityComparator());
for (Object x : cities) {
    queue.add((City) x);
}
于 2013-04-11T17:00:16.413 回答