-1

我正在尝试keywords根据 ArrayList 的列表检索从 ArrayList调用的对象terms

我编写了一个代码来检索对象的索引并将其复制到另一个 ArrayListAr2

    public ArrayList GetGrams(int n, ArrayList Keywords) {
    ArrayList Ar = new ArrayList();
    ArrayList Ar2 = new ArrayList();

    for (int i = 0; i < terms.size(); i++) {
        if (Keywords.toString().contains(terms.get(i).toString())) 
        {
            String myString = terms.get(i).toString();;
            int myIndex=0;
            myIndex = Keywords.toString().indexOf(myString,0);

            Ar.add(terms.get(i));
            Ar2.add(Keywords.get(myIndex));
        }
    }
}

问题是我的索引不正确,即 1181,而关键字仅包含 150 个关键字。

总之:我需要将相应的对象复制到keywordsterms.

4

1 回答 1

0

您使用索引来查找字符串中单词的位置,但ArrayList有自己的索引。
这是不正确的:Keywords.get(myIndex))哪里myIndex肯定会超过ArrayList大小。
那么你不应该转换ArrayListString,只需使用keywords.contains(object).

于 2013-07-12T01:28:08.500 回答