import java.util.ArrayList;
import java.util.Iterator;
import com.heima.bean.person;
public class Demo1_Foreach {
public static void main(String[] args) {
ArrayList<String> list=new ArrayList<>();
list.add("a");
list.add("b");
list.add("b");
list.add("c");
list.add("d");
// 1.普通for循环进行删除,索引要--
for(int i=0;i<list.size();i++) {
if("b".equals(list.get(i))){
list.remove(i);//通过索引删除元素
i--;//为了避免相邻二个同样的元素不能被全部删除,因为每删除一个数组内的元素会自动向前调整索引位置
}
}
// 2.迭代器删除
Iterator<String> it=list.iterator();
while(it.hasNext()) {
if("b".equals(it.next())) {
it.remove();;
}
}
// 3.for增强不能删除,只能遍历,因为增加底层依赖的是迭代器,只能使用迭代器本身的方法进行删除,不能使用集合的删除方法
// for (String s : list) {
// if("b".equals(s)) {
// list.remove("b");
// }
// }
System.out.println(list);
}
}