Java常用容器类总结

Collection

List

  • ArrayList 数组 长于随机访问元素,但在List中间插入和移除元素时较慢
  • LinkedList 链表 随机访问元素比较慢,中间插入和移除元素时较快,优化的顺序访问,特性集比ArrayList更大

Set

相同的项只保存1次

  • HashSet 使用相当复杂的方式来存储元素,这种技术是最快的获取元素的方式。
  • TreeSet 按照比较结果的升序保存对象
  • LinkedHashSet 按照添加的顺序保存对象

HashSet使用的是散列函数,TreeSet将元素存储在红-黑树数据结构中,LinkedHashSet因为查询数据的原因也使用了散列,且使用了链表来维护元素的插入顺序。

Map

键值对,不必制定尺寸,自动调整尺寸。

  • HashMap 提供了最快的查找速度,没有按照明显的顺序来保存元素。
  • TreeMap 按照比较结果的升序保存键
  • LinkedHashMap 按照插入顺序保存键, 同时保留了HashMap的查询速度
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容