美文网首页
java集合框架

java集合框架

作者: cc2016 | 来源:发表于2016-06-20 14:16 被阅读0次

使用特定容器时应该 使用接口变量,保留其实际的对象实现类型

Collection接口

  • add方法
  • iterator方法
    返回迭代器

迭代器

实现

list

  • linkedlist 数组中间删除或增加元素代价小
  • linkedlist 不支持随机访问,仅支持迭代器访问,ArrayList随机访问支持良好
  • Vector默认同步执行所有方法, ArrayList需额外同步线程

Set

  • hash 实现set,根据元素的hash code放在不同的bucket里,bucket为链表(相比完美hash,用链表解决冲突)
    元素需要实现hashcode接口

  • tree实现set, 元素放入平衡二叉树,有序,查找时间为logm,慢于hash
    元素需要实现Comparable接口

队列

  • 双端队列
  • 优先级队列,内部为堆形式实现
    元素需要实现Comparable接口

map

  • key作为set元素,同样分为hash和tree实现,关联value
  • 提供的集合视图
    • KeySet()返回key集,只是set接口
    • Values()返回value集合
    • entrySet()返回kv对集合

记住get/put顺序的set/MAP

  • 额外的将元素linked,以记住其get/put顺序
  • linkedHashMap按访问顺序排序key,可以实现最多访问驻留有限容量

视图

某个集合接口对象的浅包装

相关文章

网友评论

      本文标题:java集合框架

      本文链接:https://www.haomeiwen.com/subject/fumxlttx.html