从TreeMap [keySet()]中获取键向量



我正在CacheBean中创建一个树结构,如下所示:

private TreeMap<String,Object> locations = new TreeMap<String,Object>();

所以一个比特的数据看起来像这样:

ThisKey=[Chris,Jim,Rick,David]

我想让用户从键的列表中选择。但如果我将TreeMap直接绑定到字段,我会得到这个错误:

javax.faces.FacesException: java.util.TreeMap incompatible with java.util.List

我怎么能得到一个矢量的键使用作为一个选择列表?我尝试使用

CacheBean.treeMap.keySet();

但这不起作用。

如果你想要一个Vector,它是

Vector<String> v = new Vector<>(CacheBean.treeMap.keySet());

编辑

但是正如Java API文档所述:

在Java 2平台v1.2中,这个类被改造为实现List接口,使其成为Java的成员集合框架。与新的集合实现不同,矢量是同步的。如果不需要线程安全的实现,建议使用ArrayList代替Vector。

你可能应该使用ArrayList,它的工作原理是一样的,几乎任何Java Collection类。

最新更新