声明TreeMap的JAVA替代方案



我正在尝试创建一个TreeMap,它能够存储映射到一个键的多个bean(Row)。我目前对TreeMap的声明是:

Map<String, List<Row>> rowmap = new TreeMap<String, List<Row>>();

有了这种声明,我可以很容易地使用这种方法添加:

rowmap.get(combinedKey).add(rowlst);

这在我的本地机器上运行良好。问题是由于Live Tomcat服务器中的一些问题,我无法使用上面提到的声明来声明Map,它抛出了以下错误:

Syntax error on token "<", ( expected
Syntax error, insert ")" to complete Expression
Syntax error on token "<", ( expected
Syntax error on token "(", invalid Expression

所以我这样声明:

Map rowmap = new TreeMap();

这解决了以前的错误,但我不能使用rowmap.get(combinedKey).add(rowlst);向一个键添加多个值,因为.add是在List而不是TreeMap中定义的,根据我的理解,我需要这样声明TreeMap:Map<String, List<Row>> rowmap = new TreeMap<String, List<Row>>();才能使用rowmap.get(combinedKey).add(rowlst);

如果有人能提出解决这个问题的办法,那就太好了。我对所有的建议都持开放态度。非常感谢!

编辑:Tomcat版本:5.5.9Java版本:1.6.0_41-b02

不使用add方法,而是使用put for Maps。put(K键,V值)例如:rowmap.put(combinedKey,rowlst);

最新更新