【每日知识点】20200811 interator hashmap(未填)

1.迭代器 interator

【基础】

功能比较简单,并且只能单向移动

包含hasnext、next、remove 三个方法

  • hasnext:检查序列中是否还有元素
  • next:取得当前值,并指向下一个值
  • remove:将新返回元素删除,请注意:由于是删除新返回元素,所以要删除第一个元素时,必须先next,否则会报错

在要删除元素时,不要使用原集合进行删除,而是使用迭代器删除!

个人理解,迭代器像指针这个指针已经连接在这个集合上了,再更改就打乱排序了,所以不可以!

【题】

1.list 是一个 ArrayList 的对象,哪个选项的代码填到 //todo delete 处,可以在 Iterator 遍历的过程中正确并安全的删除一个 list 中保存的对象

Iterator it = list.iterator();
int index = 0;
while (it.hasNext())
{
    Object obj = it.next();
    if (needDelete(obj))  //needDelete返回boolean,决定是否要删除
    {
        //todo delete
    }
    index ++;
}

答案:it.remove();
注意不能选list.remove();

原因你猜:-)

【参考连接】

https://blog.csdn.net/qq_33945246/article/details/91040517

https://blog.csdn.net/Jae_Wang/article/details/80526216

2.hashmap 

知识点居多,先留个坑以后再填

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值