java - List<String> 到 ArrayList<String> 的转换问题

标签 java list arraylist

我有一个以下方法......它实际上是获取句子列表并将每个句子分成单词。就是这样:

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 中

HashMap<String, ArrayList<String>>

所以这个方法返回 List 并且我需要一个 ArrayList?如果我尝试转换它不会成功...有什么建议吗?

另外,如果我将 ArrayList 更改为 HashMap 中的 List,我会得到

java.lang.UnsupportedOperationException

因为我的代码中有这一行

sentenceList.add(((Element)sentenceNodeList.item(sentenceIndex)).getTextContent());

有更好的建议吗?

最佳答案

Cast 在列表的实际实例是 ArrayList 的情况下工作。如果是,比如说,一个 Vector(它是 List 的另一个扩展),它将抛出一个 ClassCastException。

更改 HashMap 定义时的错误是由于稍后处理的元素,并且该过程需要一个仅在 ArrayList 中定义的方法。异常告诉你它没有找到它正在寻找的方法。

用旧的内容创建一个新的ArrayList

new ArrayList<String>(myList);

关于java - List<String> 到 ArrayList<String> 的转换问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13134983/

相关文章:

java - 检查嵌套在字符串中的括号

java - 错误: java: cannot find symbol symbol: class MockitoJUnitRunner

performance - Haskell - 从 List 转换为 Data.Vector

python - 如何通过保留相同的原始顺序来替换基于元组列表的单词列表?

python - 删除包含多个条件的列表条目

android - 写入和读取 ArrayList<File> 到 android 缓存内存

java - 从 arraylist 取消同步数组

java - 在 JBOSS EAP 6.2.0 上部署 war 时如何抑制类路径条目警告?

java - 使用 Java kafka 客户端自定义分区

java - 如何将运行时已知的值 ('how many' 传递给 SQL 查询