欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

List remove的使用

程序员文章站 2022-04-18 19:26:44
...
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;


public class ListRemoveTest {
	 public static void main(String[] args) {
		 List<String> list = new ArrayList<String>();
		 int i =0;
		 for(i=0;i<3;i++){
			 list.add("aaaaa1111");
		 }
		 
		//第一种方式
		//从后面遍历就不必考虑长度的问题了,移除后面的对象不会对整个链表位置产生变化
		int size =list.size();
		for(i=size-1;i>-1;i--){
			if("aaaaa1111".equals(list.get(i))){
				list.remove(i);
			}
		}
		//第二种
		//遍历的长度一定要是list.size(),因为后面移除对象之后就会导致list长度变化
		for(i=0;i<list.size();i++){
			if("aaaaa1111".equals(list.get(i))){
				list.remove(i);
				i--;
			}
		}
		//第三种
		//最常用的方式
		Iterator<String> it = list.iterator();  
        while(it.hasNext()){
            if("aaaaa1111".equals(it.next())){  
                //移除当前的对象  
                it.remove();  
            }  
        }
        System.err.println(list.size());
	 }
}


转载于:https://my.oschina.net/u/2346091/blog/633292