如何将新键值添加到java中的现有List Map对象

时间:2017-12-01 11:18:37

标签: java data-structures hashmap core

在下面的代码我得到的文件地图我想添加新的密钥&文件对象的价值。

public List<Map<String, Object>> getDocuments() {
    String sql = "Select * from docs";
    List<Map<String, Object>> Documents = jdbcTemplateObject.queryForList(sql);
    return Documents;
}

输出:

[{Id=DOC10,Name=Test Document,Date=10-12-17}],
[{Id=DOC11,Name=Sample Document,Date=15-12-17}]

如何向此List<Map>对象添加新的k,v,以便输出看起来像这样?

[{Id=DOC10,Name=Test Document,Date=10-12-17,Access=true}],
[{Id=DOC11,Name=Sample Document,Date=15-12-17,Access=true}]

3 个答案:

答案 0 :(得分:6)

您可以遍历列表并为每个地图添加新的键值对:

sayText(speech):void {
  try{
     this.tts.speak({
       text: speech,
       locale: "ar-AE"
     }).then(() => console.log("Succesfully spoke" ));

  }
  catch(e){
  console.log(e);
  }
}

答案 1 :(得分:0)

另一种解决方案,取决于jdbcTemplateObject.queryForList(sql);做的是在查询中添加值。

select *, 1 as Access from docs

这似乎迭代每一列以将其插入Map

注意:查询不一定是DBMS独立的! Boolean实际上不是SQL类型

答案 2 :(得分:0)

迭代列表&gt;文件&amp;获取Map Object并将键值对放在该Map对象中 E,G

List<Map<String, Object>> Documents = jdbcTemplateObject.queryForList(sql);
    for (Map<String, Object> map : Documents) {
        map.put(key, value);
    }
相关问题