首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > J2SE开发 >

求一最高效的方式,遍历,修改,删除一个ArrayList中的若干元素?解决方案

2011-12-30 
求一最高效的方式,遍历,修改,删除一个ArrayList中的若干元素?求一最高效的方式,遍历,修改,删除一个ArrayLi

求一最高效的方式,遍历,修改,删除一个ArrayList中的若干元素?
求一最高效的方式,遍历,修改,删除一个ArrayList中的若干元素?

例如:
for (int i = 0; p_arrayList.size() < i; i++)
{
 if (...)
 {
  p_arrayList.remove(i);
 }

 if (...)
 {
  new ObjectXX = .....;
  p_arrayList.set(i , ObjectXX);
 }
}

[解决办法]
如果要修改、删除什么的,可以使用LinkedList,效率要比ArrayList高。
[解决办法]
用迭代器可以很方便的遍历所有元素。
[解决办法]
学习!up
[解决办法]
不能这样删除的
会outofbounds
[解决办法]

Java code
import java.util.ArrayList;/** *  * @author wdman * @version 1.0 2007-12-26 */public class TestList {    /**     * @param args     */    public static void main(String[] args) {                ArrayList<String> list = new ArrayList<String>();                list.add("data");        list.add("data2");        list.add("data");        list.add("data4");        list.add("data");        list.add("data2");        list.add("data");        list.add("data8");        list.add("data");        list.add("data10");        list.add("data");                    int j = list.indexOf("data2");         while (j > -1) {            list.set(j, "new data");            j = list.indexOf("data2");         }                while (list.contains("data")) {            list.remove("data");        }                for (int i=0; i<list.size(); i++) {            System.out.println(list.get(i));        }            }}
[解决办法]
Java code
while (list.contains("data")) {            list.remove("data");        }
[解决办法]
up!!!
[解决办法]

up...
[解决办法]
请注意代码简洁和代码高效的区别.
[解决办法]
第一 如果不需要明确定位可以采取6楼给出的用迭代器的方法 
第二 如果需要定位并且有删除最好从后向前遍历 因为如果从前向后遍历当你删除的时候会影响到后面的记录size的大小也会变 很有可能超出下标范围
[解决办法]
建议是否可以采用HashMap
[解决办法]
这是对于集合类的理解 , ArrayList 用于查询,比较方便,而且高效。
如果用于删除和插入建议使用 LikedList

热点排行