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);
}
}
这是我编写的一段代码(它使用斯坦福 CoreNLP)。我面临的问题是,目前此代码仅适用于一个地图,即“单词”。现在,我希望一旦解析器看到“000000000”这是我的分隔符,那么应该将一个新的 Map 添加到列表中,然后将键和值插入其中。如果它没有看到“000000000”,那么键和值将被添加到同一个映射中。请帮助我,因为即使经过很多努力我也无法做到。