在Java中获取哈希映射中的值

时间:2013-02-12 06:46:32

标签: java hashmap

我不是java开发人员,这不是我的作业或其他东西。我只需要获取这些参数的值:end&开始。这就是我所拥有的:

rs = [{}, {end=2013/11/5, begin=2012/11/6}]

我很想知道我是否能得到这样的价值观:

rs[1].end
rs[1].begin

来源是:

protected QueryParameters prepareForm(final ActionContext context) {
    final SearchErrorLogForm form = context.getForm();
    Map<String, Object> rs = form.getValues();
    System.out.println(rs);

    /*the output is: {pageParameters={}, period={end=2013/11/5, begin=2013/11/6}} */
}
抱歉,rs类型是hashmap。

2 个答案:

答案 0 :(得分:2)

这不是一个有效的陈述。

分配数组的正确方法是:

String dates[] = {"2013/11/5","2012/11/6"};
String start = dates[0];
String end = dates[1];

oracle docs

有一个很好的tutourial

好的,这是一张包含两张地图的地图。名为“pageParameters”的第一张地图为空。第二个名为period,包含两个项目。关键的“结束”映射到值“2013/11/5”。键“开始”映射到值“2013/11/6”。

要访问地图中的对象,您可以这样做:

final Map<String, String> period = (Map<String, String>) rs.get("period");
final String begin = period.get("begin");
final String end = period.get("end");

如果您想更改地图期间的值,则需要覆盖现有的值:

period.put("end", "NEW_END");
rs.put("period", period);

有关详细信息,Oracle在Hashmaps上有很棒的tutorials

答案 1 :(得分:1)

你可以这样做:

第一个

rs[1][0]

最后一次

rs[1][rs[1].length-1]