java中集合中删除特定元素

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gao1440156051/article/details/70849189

总结有三种方式:


import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class Main{
	public static void main(String[] args) {
		
		/*
		 * 直接使用List<String> listArrays.asList("1","2","3","4");
		 * 会抛出UnsupportedOperationException异常
		 */
		List<String> list=new ArrayList<String>(Arrays.asList("1","2","3","4"));
		
		//方式1:索引
		/*
		for(int i=0;i<list.size();i++){
			if(list.get(i).equals("3")){
				list.remove(i);
				i--;//注意
			}
		}*/
		
		//方式2:迭代器
		/*
		Iterator<String> sListIterator = list.iterator();  
		while(sListIterator.hasNext()){  
		    String e = sListIterator.next();  
		    if(e.equals("3")){  
		    sListIterator.remove();  
		    }  
		} */
		
		//方式3:lamda表达式
		list.removeIf((String s)->s.equals("3"));
		
		System.out.println(list);
	}
}


注意一点,要避免索引和迭代器混用。



猜你喜欢

转载自blog.csdn.net/gao1440156051/article/details/70849189