从ArrayList中删除给定长度的字符串?

use*_*102 5 java arraylist bluej

我们给出了一个ArrayList形式的单词列表,如下所示:

 public ArrayList<String> getListOfStrings(){
     ArrayList<String> list = new ArrayList<String>();
     list.add("This");
     list.add("is");
     list.add("an");
     list.add("exercise");
     list.add("to");
     list.add("illustrate");
     list.add("the");
     list.add("use");        
     list.add("of");
     list.add("ArrayLists");        
     list.add(".");
     return list;
    }
Run Code Online (Sandbox Code Playgroud)

如何编写一个方法来删除用户输入长度为"len"的列表中的所有单词(即ArrayList中的所有对象)?

我已经编写了一个方法,列出了用户输入的所有长度为"len"的单词,并且它有效,如下所示:

public ArrayList<String>getWordsWithLength(int len, ArrayList<String> lijst){
    ArrayList<String> list = new ArrayList<String>();
    for(String woord: lijst){
        if(woord.length()==len){
            list.add(woord);
        }
    }
    return(list);

}
Run Code Online (Sandbox Code Playgroud)

但作为java的初学者,我坚持如何删除长度为"len"的单词.请帮忙!(我的印象是你开始将它们从列表末尾删除,然后回到原地)

Abs*_*aos 7

您当前迭代列表的方式不允许您使用异常但迭代器将其删除.

Iterator<String> it = list.iterator();
while(it.hasNext()) {
 if([Condition]) {
   it.remove();
  }
}
Run Code Online (Sandbox Code Playgroud)