1. 如何删除一个list中最后一个元素
1、对于已经创建完成的list容器,如果想要删除容器中的首个元素,那么通过调用pop_front可以完成。
2、从输出的结果看,list容器中的首个元素已经删除成功。
3、如果想要删除list元素中第二个元素,那么通过调用erase函数可以完成,具体可以参照下图红色方框标示的代码块。
4、从输出的结果看,list容器中的第二个容器已经被删除成功。
5、如果想要删除list容器的最后一个元素,那么通过调用pop_back函数来完成。
6、从输出的结果看,list容器中的最后一个元素已经删除成功。
2. 如何从arraylist集合中删除元素
public static void main(String[] args) {
List<String> list = new ArrayList<String>();
list.add("aaaaa");
list.add("bbbbb");
list.add("ccccc");
list.add("ddddd");
list.add("eeeee");
System.out.print(list.toString()+" ");
list.remove(3);
System.out.print(list.toString()+" ");
}
应该能明白了吧? list.remove("对应元素下标")
3. java list怎么删除元素
如果是删除指定元素则如下:
ArrayList al = new ArrayList();
al.add("a");
al.add("b");
//al.add("b");
//al.add("c");
//al.add("d");
for (int i = 0; i < al.size(); i++) {
if (al.get(i) == "b") {
al.remove(i);
i--;
}
1、for循环遍历list
for(int i=0;i<list.size();i++){
if(list.get(i).equals("del"))
list.remove(i);
}
这种方式的问题在于,删除某个元素后,list的大小发生了变化,而你的索引也在变化,所以会导致你在遍历的时候漏掉某些元素。比如当你删除第1个元素后,继续根据索引访问第2个元素时,因为删除的关系后面的元素都往前移动了一位,所以实际访问的是第3个元素。因此,这种方式可以用在删除特定的一个元素时使用,但不适合循环删除多个元素时使用。
2、增强for循环
for(String x:list){
if(x.equals("del"))
list.remove(x);
}
这种方式的问题在于,删除元素后继续循环会报错误信息ConcurrentModificationException,因为元素在使用的时候发生了并发的修改,导致异常抛出。但是删除完毕马上使用break跳出,则不会触发报错。
3、iterator遍历
Iterator<String> it = list.iterator();
while(it.hasNext()){
String x = it.next();
if(x.equals("del")){
it.remove();
}
}
}
希望可以帮到你。
4. 如何删除list中特定位置的的元素
ArrayList al = new ArrayList();
al.add("a");
al.add("b");
//al.add("b");
//al.add("c");
//al.add("d");
for (int i = 0; i < al.size(); i++) {
if (al.get(i) == "b") {
al.remove(i);
i--;
}
}
在代码中,删除元素后,需要把下标减一。这是因为在每次删除元素后,ArrayList会将后面部分的元素依次往上挪一个位置(就是copy),所以,下一个需要访问的下标还是当前下标,所以必须得减一才能把所有元素都遍历完。
5. 如何删除list中特定位置的的元素
ArrayList al = new ArrayList();al.add("a");al.add("b");//al.add("b");//al.add("c");//al.add("d");for (int i = 0; i < al.size(); i++) {if (al.get(i) == "b") {al.remove(i);i--;}}在代码中,删除元素后,需要把下标减一。
这是因为在每次删除元素后,ArrayList会将后面部分的元素依次往上挪一个位置(就是copy),所以,下一个需要访问的下标还是当前下标,所以必须得减一才能把所有元素都遍历完。