我已经使用列表编写了代码。但是,即使我使用了remove()
方法,输出也会显示所有单词而不删除。我该怎么做才能克服?
import java.util.*;
public class ListExample1 {
public static void main(String[] args) {
List<String> strList = new ArrayList<String>();
//add data into list
strList.add("ask");
strList.add("rule");
strList.add("left");
strList.add("right");
strList.add("fight");
strList.add("fish");
strList.add("ask");
//read the data
for(String str : strList){
System.out.println(str);
}
System.out.println("--------------------------");
Iterator<String> iteratorRef = strList.iterator();
while(iteratorRef.hasNext()){
String str = iteratorRef.next();
System.out.println(str);
if(str.equals("ask")){
iteratorRef.remove();
}
}
最佳答案
在remove方法之后,您还没有编写任何打印语句,因此看不到结果。只需添加打印方法
System.out.println("ArrayList after removal : ");
for(int i=0; i< strList.size(); i++)
System.out.println(strList.get(i));
}
关于java - 一个使用迭代器删除条目的程序,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37953785/