如何 return TreeMap 中包含的值的 TreeSet?
How do I return a TreeSet of the values contained in a TreeMap?
我正在尝试获取 TreeMap 中大于某个值 key 的所有键值的集合。
下面的代码尝试:
TreeSet<E> set = (TreeSet<E>)tMap.tailMap(key, false).values();
在 Java 中有没有办法做到这一点?
谢谢!!
values()
returns 一个 Collection
,所以你总是可以将 Collection
提供给 TreeSet
构造函数(假设你的 E
class 实现 Comparable<E>
):
TreeSet<E> set = new TreeSet<E>(tMap.tailMap(key, false).values());
如果您希望 TreeSet
使用一些自定义 Comparator
而不是自然排序,您可以这样写:
TreeSet<E> set = new TreeSet<E> (yourComparator);
set.addAll(tMap.tailMap(key, false).values());
我正在尝试获取 TreeMap 中大于某个值 key 的所有键值的集合。
下面的代码尝试:
TreeSet<E> set = (TreeSet<E>)tMap.tailMap(key, false).values();
在 Java 中有没有办法做到这一点?
谢谢!!
values()
returns 一个 Collection
,所以你总是可以将 Collection
提供给 TreeSet
构造函数(假设你的 E
class 实现 Comparable<E>
):
TreeSet<E> set = new TreeSet<E>(tMap.tailMap(key, false).values());
如果您希望 TreeSet
使用一些自定义 Comparator
而不是自然排序,您可以这样写:
TreeSet<E> set = new TreeSet<E> (yourComparator);
set.addAll(tMap.tailMap(key, false).values());