У мене є наступний метод ... який фактично бере список речень і розбиває кожне речення на слова. Ось воно:
public List<String> getWords(List<String> strSentences){
allWords = new ArrayList<String>();
Iterator<String> itrTemp = strSentences.iterator();
while(itrTemp.hasNext()){
String strTemp = itrTemp.next();
allWords = Arrays.asList(strTemp.toLowerCase().split("\\s+"));
}
return allWords;
}
Я повинен передати цей список у хеш-карту у наступному форматі
HashMap<String, ArrayList<String>>
отже, цей метод повертає List, і мені потрібен arrayList? Якщо я спробую кинути, це не тренується ... будь-які пропозиції?
Крім того, якщо я змінив ArrayList на List у HashMap, я отримую
java.lang.UnsupportedOperationException
через цей рядок у моєму коді
sentenceList.add(((Element)sentenceNodeList.item(sentenceIndex)).getTextContent());
Будь-які кращі пропозиції?
UnsupportedOperationException
це спричинено тим, щоArrays.asList
метод повертає список фіксованого розміру, підкріплений масивом - його неможливо змінити. Рішення, представлене тут @Jesper, цього уникне.