今天在删除集合中某个元素的时候遇到了个问题,需求:将存有10,10,9,9,9,8这几个元素的集合中的10这个元素删除
用到了boolean remove(Object o)方法,代码如下:
显示数组越界异常,原因是集合添加的元素都将转换成Object类型,
强转后执行显示只删除了一个10元素,
第三次重复使用remove方法,完成需求,下面看下remove的源码:
这里可以看到remove方法中返回值为布尔值,for循环中用了return返回value,return终止了循环
所以remove方法删除指定元素时只能删除一次。
需求:如何做到在不知道集合中指定元素的数量的情况下删除指定元素?
可以使用迭代器或者for循环或者while循环.