我正在使用HashMap类,它看起来像这样:
HashMap<String, ArrayList<String>> fileRank = new HashMap<String, ArrayList<String>>();
我想知道如何在初始放置后将新String添加到Arraylist中。
fileRank.put(word, file1);
我想将file1之后的file2添加到密钥:来自上面的单词。
答案 0 :(得分:5)
你必须首先获得数组列表:
ArrayList<String> list = fileRank.get(word);
list.add(file1);
当然,如果您不知道该密钥是否有条目,它会变得更复杂。
ArrayList<String> list = fileRank.get(word);
if (list == null) {
list = new ArrayList<String>();
fileRank.put(word, list);
}
list.add(file1);
答案 1 :(得分:3)
您向地图询问某个键的值,该键是一个ArrayList,您可以在其上调用add。
String key = "myKey";
fileRank.put( key, new ArrayList<String>() );
//...
fileRank.get( key ).add( "a value");
答案 2 :(得分:2)
根据String键获取ArrayList
,对ArrayList执行add()
,然后将其放回HashMap
(可选,因为地图已经保存了对它的引用) ;
fileRank.get(word).add(String)
fileRank.put(work, list);
答案 3 :(得分:0)
可能的解决方案:
public class MyContainer {
private final Map<String, List<String>> myMap = new HashMap<String, List<String>>();
public void add(String key, String value) {
if(myMap.containsKey(key)) {
myMap.get(key).add(value);
} else {
ArrayList<String> newList = new ArrayList<String>();
newList.add(value);
myMap.put(key, newList);
}
}
}
答案 4 :(得分:0)
private static HashMap&gt; mmArrays = new HashMap&gt;();
mmArrays.put(键,数据);