美文网首页码农笔记
java中的集合类理解

java中的集合类理解

作者: zhaoyunxing | 来源:发表于2018-03-09 16:30 被阅读0次

List

特点:元素有放入顺序,元素可重复

  • ArrayList :层数据结构使用数组结构, 查询速度快。但是增删稍慢。(线程不同步,数组0.5倍延长)
  • LinkedList:底层使用链表数据结构, 增删块, 但是查询慢。
  • Vector:底层是数组数据结构,查询增删慢(线程同步,数组百分百延长)已经被ArrayList取代

Map

特点:元素按键值对存储,无放入顺序

  • HashMap:非线程安全,高效,支持null
  • HashTable:线程安全,低效,不支持null
  • LinkedHashMap:线程不安全,有序,key和value都允许为空

Set

特点:元素无放入顺序,元素不可重复(注意:元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的)

  • HashSet(底层由HashMap实现) :存储object的集合,既然是集合,就不允许有重复元素。判断两个元素是否相同,是由hashCode与equals方法共同完成的。
  • LinkedHashSet

相关文章

网友评论

    本文标题:java中的集合类理解

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