BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #16890同步于 2010/12/14
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

使用Enumeration实现的Vector类的缺陷

cb
2010/12/14镜像同步2 回复
Vector v = new Vector(); v.add("one"); v.add("two"); v.add("three"); v.add("four"); Enumeration enum = v.elements(); while(enum.hasMoreElements()){ String s = (String)enum.nextElement(); if(s.equals("two)) v.remove("two"); else{ System.out.println(s); } } 输出结果:one four 我调试了下,当s.equals("two")成立并执行if语句之后,下一次while循环s直接等于“four”了。 请问这里面发生了什么?
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
ericyosho机器人#1 · 2010/12/15
你把“two”删掉的时候,iterator就变到了“three”的位置,下一次循环,就到“four”了
irican机器人#2 · 2010/12/16
一般来说不要这么用。。。