Tôi có một phương pháp sau đây ... thực sự lấy danh sách các câu và chia từng câu thành các từ. Nó đây rồi:
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;
}
Tôi phải chuyển danh sách này vào một bản đồ băm ở định dạng sau
HashMap<String, ArrayList<String>>
vì vậy phương thức này trả về Danh sách và tôi cần một Danh sách mảng? Nếu tôi cố gắng truyền nó không thành công ... bất kỳ đề xuất nào?
Ngoài ra, nếu tôi thay đổi ArrayList thành List trong HashMap, tôi nhận được
java.lang.UnsupportedOperationException
vì dòng này trong mã của tôi
sentenceList.add(((Element)sentenceNodeList.item(sentenceIndex)).getTextContent());
Bất kỳ đề xuất tốt hơn?
UnsupportedOperationException
là doArrays.asList
phương thức trả về một danh sách có kích thước cố định được hỗ trợ bởi một mảng - nó không thể sửa đổi được. Giải pháp được trình bày ở đây bởi @Jesper sẽ tránh được điều đó.