Java list删除指定多个下标数据
2014-01-01 20:20
357 查看
package Test; import java.util.ArrayList; import java.util.Arrays; import java.util.List; /** * 删除一个list中的其中几个元素的操作 * @author * */ public class HelloWorld { /** *得到要用来进行演示的数据 * @return */ public static List<Integer> initData(){ List<Integer> datas = new ArrayList<Integer>(); Integer data = null; for(int i=1;i<=10;i++){ data = new Integer(i); datas.add(data); } return datas; } public static void main(String[] args) { int[] indexArr = new int[]{1,9,2,5}; //定义要删除list中集合的下标组合,一般在真正项目中,这个数组都是有程序执行得到,一般都是排序正常的 //这里为了演示如何对数组进行排序,所以打乱了顺序 //调用Arrays这个类的静态方法sort对数组进行排序,排序结果为正序 Arrays.sort(indexArr); //打印出来看看 for(Integer index : indexArr){ System.out.println(index); } List<Integer> datas = initData(); //得到测试数据 //因为要删除list里面的多个的值,所以会涉及到一个问题,就是当你删除掉下标为1的元素十, //原来下标为2的元素会自动改变自己的下标为0,后面的元素依次把自己的下标值减一 //鉴于这种情况,我们想循环删除list中的多个元素的话,就必须从后往前删,这样保障了你删除了一个元素之后, //list中元素的下标移动不会影响到那些需要删除,但是还未删除到的以元素 System.out.println("删除前: "+datas); //删除多个指定下标的数据 for(int i=indexArr.length-1;i>=0;i--){ //倒序 if(i<=datas.size()){ System.out.println("删除了第 "+(indexArr[i]+1)+" 个元素"); datas.remove(indexArr[i]); } } System.out.println("删除后: "+datas); } }
相关文章推荐
- 数据结构——查找和删除指定连接点(java实现)
- Java中从list中删除符合条件的数据
- java 删除oracle指定表的数据同时清除对应存储的数据
- java中删除list指定元素遇到的问题
- JAVA中,List<Interger>集合怎么删除特定值的元素,不是根据下标
- Java List删除指定的对像错误 ConcurrentModificationException
- Java 中List数据,自定义对象按指定的属性进行排序
- Java中从list中删除符合条件的数据
- Java如何大批量从json数据源中按指定符号隔字符串,并修改、删除数据
- java中两个list对比,查出增加和删除的数据然后去重
- java怎么删除List中的指定元素
- List删除元素报Exception in thread "main" java.util.ConcurrentModificationException异常,或数据删除不完整
- Java中删除List中的某些数据的方法
- java 删除List 中的重复数据
- Java-集合 list对象进行指定位置插入、删除、迭代、遍历输出(具体习题讲解)
- 【java】初始化一个指定大小的list,在指定位置set存入元素,下标越界
- java 删除List 中的重复数据
- java list遍历删除数据
- Java-集合 list对象进行指定位置插入、删除、迭代、遍历输出(具体习题讲解)
- Java list删除指定多个下标数据