总结有三种方式:
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);
}
}
注意一点,要避免索引和迭代器混用。