0

同様の文字列を ArrayList から削除しようとしていますが、次のエラーが発生します。

 CurrentModificationException

これが、元のarrayList(古い)を渡して、冗長な文字列のない新しいリストを取得する方法です。

ArrayList<String> removeRed(ArrayList<String> old) throws IOException
{       

    ArrayList<String> newList = new ArrayList<String>();


    for (int i=0; i< old.size(); i++)
    {
        if(newList.size() < 1)
        {
            newList.add(old.get(0));

        } else{

            for(Iterator<String> iterator = newList.iterator(); iterator.hasNext();) {

                while(iterator.hasNext())
                {
                    if(!ChopMD((String) iterator.next()).equals(ChopMD(old.get(i))))
                    {
                        newList.add(old.get(i));
                        Log.e("new algo", "" + old.get(i) );
                    }
                }

            }
        }
    }}

私の ChopMD() は特定の文字列を返し、正常に動作することに注意してください。最初のいくつかの文字列では問題なく動作しますが、これはその例外をスローします。この問題を解決するための提案をいただければ幸いです。ありがとう。

4

2 に答える 2