import java.util.ArrayList;
import java.util.List;
public class TestInt {
public static void main(String args[]){
List<Integer> a = new ArrayList<Integer>();
a.add(3);
a.add(4);
a.add(5);
a.add(6);
a.add(7);
a.add(8);
for(Integer f: a){
a.remove(f);
}
}
}
import java.util.List;
public class TestInt {
public static void main(String args[]){
List<Integer> a = new ArrayList<Integer>();
a.add(3);
a.add(4);
a.add(5);
a.add(6);
a.add(7);
a.add(8);
for(Integer f: a){
a.remove(f);
}
}
}
解决方案 »
- (很困惑)一个关于 继承中使用super关键字调用父类的方法问题!
- TreeTable中单元格颜色设定问题
- 请教 如何用java获取CPU使用率 我用的操作系统是windows xp
- 怎样用移位来解决这个问题?
- sql2000连接servlet 的问题!执行查询语句的时候无法返回全部结果集,只能返回一条语句,执行精确查找的时候,页面显示空白!请高手帮忙!
- 怎么查看某个包下都有哪些类存在?
- 请推荐一些java的好网站!
- 大家写JAVA时用什么编辑器?
- 请问用applet做一个画图板需要怎么做?(急)
- 关于16进制字符串转字节byte的问题
- Java SE文件的追加写入
- 如何替换html文件中的字符啊
http://www.blogjava.net/EvanLiu/archive/2008/08/31/224453.html
看看这个网站吧,帮你找了一下
a.remove(f);
}
这样循环是不可以对a进行删除操作的可以for(int i;xxx;xx)
来循环
不多解释了, 我这个帖子里分析的算清楚了
你在add的时候,实际上是临时创建一个对象3然后加到list里面,而后面删除的全是新的对象。这些新的对象在list中并不存在。虽然里面的值可能一样。记住,java超作对象的时候,除了基本类型,都是属于指针型的。
为什么for(int i=0;i<10;i++)这种方式可以的?
所以 Iterator 在工作的时候是不允许被迭代的对象被改变的。但你可以使用 Iterator 本身的方法 remove() 来删除对象, Iterator.remove() 方法会在删除当前迭代对象的同时维护索引的一致性。