2

我有一个SortedMap(a TreeMap,特别是),我从中提取值。稍后,我需要获取第一个和最后一个值,因为它们在SortedMap.

SortedMap.values()返回 a Collection,其Iterator保留顺序。因此,获得第一个值就像collection.iterator().next(). 然而,获取最后一个值并不是那么简单——一直迭代到最后一个值是非常低效的。

有没有解决的办法?现在,我一直迭代到最后并存储该值,所以我只需要做一次......

4

1 回答 1

4

如果您使用的是 Java 6 或更高版本,则可以使用NavigableMap代替SortedMap, 并使用其lastEntry方法。

否则,您可以使用SortedMap.get(SortedMap.lastKey()).

于 2013-02-04T23:01:15.030 回答