我使用列表编写了代码。但即使我使用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();
}
}
答案 0 :(得分:2)
您在删除方法后没有写任何print语句,因此您无法看到结果。只需添加打印方法
N
答案 1 :(得分:0)
您在while循环中无条件地打印每个字符串。这是你想要的吗?
while(iteratorRef.hasNext()){
String str = iteratorRef.next();
if(str.equals("ask")){
iteratorRef.remove();
} else {
System.out.println(str);
}
}