Map<String, List<String>> words = new HashMap<String, List<String>>();
List<Map> listOfHash = new ArrayList<Map>();
for (int temp = 0; temp < nList.getLength(); temp++) {
Node nNode = nList.item(temp);
if (nNode.getNodeType() == Node.ELEMENT_NODE) {
Element eElement = (Element) nNode;
String word = getTagValue("word", eElement);
List<String> add_word = new ArrayList<String>();
String pos = getTagValue("POS", eElement);
if(words.get(pos)!=null){
add_word.addAll(words.get(pos));
add_word.add(word);
}
else{
add_word.add(word);
}
words.put(pos, add_word);
}
}
這是我寫的一段代碼(它使用Stanford CoreNLP)。我面臨的問題是,目前這個代碼只與一個地圖即「單詞」一起工作。現在,我希望只要解析器看到「000000000」是我的分隔符,就應該將新的Map添加到List中,然後將鍵和值插入到它中。如果沒有看到「000000000」,則鍵和值將被添加到相同的地圖中。 請幫助我,因爲即使經過很多努力,我也無法做到這一點。HashMap的列表Java
您能否舉個例子? –