DELETE
如何在用户回答特定值时获取键,以及如何为一个键添加更多值?
答案 0 :(得分:2)
1。。地图集不在同一键下不支持多个值,它将覆盖以前存储的所有内容。< / p>
2。。但是,您可以将其从<String,String>
更改为<String,List<String>>
,从而可以将客户的答案累积到列表中。该键将仅引用一个对象,即字符串列表,但该列表本身可以包含许多值。
3。。为了向列表中添加更多字符串,您将需要通过所需键检索列表,然后向其中添加新的字符串。
以下是实现该想法的代码:
private void test(){
Map<String, List<String>> categories = new HashMap<>();
String answerFromClient = "Some text";
List<String> actionAnswers = categories.get("action");
if (actionAnswers == null){
actionAnswers = new ArrayList<>();
actionAnswers.add(answerFromClient);
categories.put("action",actionAnswers);
}
else{
actionAnswers.add(answerFromClient);
}
}