java 集合分析

collection接口实现iterable接口,list、set实现collection接口

实现iterable的类有增强for循环,提供了iterator()方法返回iterator, iterator下有hasNext()(是否有下一项),next()(获取下一个),remove()(删除next()的当前返回值)三个方法

collection接口的remove(Object)方法和iterator接口的remove()方法的区别

1. collection接口的remove(Object)需要一个一个遍历找到对象才能删除,而iterator的remove()方法是结合next()使用,所以iterable接口的remove()效率高

2. collection接口的remove(Object)会报错,iterator的remove()不会报错

1.java.util.collection接口下的集合

1.1 list 集合

可以添加重复元素,有顺序
1.1.2 ArrayList与LinkedList的区别
ArrayList get() set()效率快,添加删除效率差,LinkedList反之

1.2set集合

不保存重复元素,没有顺序
HashSet、TreeSet、LinkedHashSet的区别
HashSet效率最好,没有顺序,元素可以为null,但不能重复
TreeSet根据结果升序保存对象
LinkedHashSet根据添加顺序保存对象

2.Map集合

Map的初始容量是16,满四分三就翻倍
HashMap与TreeMap、LinkedHashMap的区别
HashMap效率好,没有顺序
TreeMap根据结果升序保存键(key)
LinkedHashMap根据添加顺序保存键(key)还有HashMap的查询速度、

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值