日期:2014-05-20 浏览次数:20756 次
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)); } } }
------解决方案--------------------
while (list.contains("data")) { list.remove("data"); }
------解决方案--------------------
up!!!
------解决方案--------------------
up...
------解决方案--------------------
请注意代码简洁和代码高效的区别.
------解决方案--------------------
第一 如果不需要明确定位可以采取6楼给出的用迭代器的方法
第二 如果需要定位并且有删除最好从后向前遍历 因为如果从前向后遍历当你删除的时候会影响到后面的记录size的大小也会变 很有可能超出下标范围
------解决方案--------------------
建议是否可以采用HashMap
------解决方案--------------------
这是对于集合类的理解 , ArrayList 用于查询,比较方便,而且高效。
如果用于删除和插入建议使用 LikedList