网站百度权重没有数据,厨之梦进口食品网站谁做的,wordpress 4.0.23漏洞,wordpress 4.5 汉化主题Collection |--List#xff1a;列表。 特点#xff1a; 1#xff0c;有序(存储元素的顺序和取出元素的顺序一致) 2#xff0c;该集合中的元素都有索引#xff0c;所以可以通过索引(角标)来访问元素。 3#xff0c;它可以存储重复元素。 常见子类对象:记住#xff1a;具…Collection |--List列表。 特点 1有序(存储元素的顺序和取出元素的顺序一致) 2该集合中的元素都有索引所以可以通过索引(角标)来访问元素。 3它可以存储重复元素。 常见子类对象:记住具体的子类对象我们要学习应该是该对象的特有的数据结构以及相关的特点。 |--Vector:jdk1.0就存在了。底层是数组结构的。可变长度数组 原理一旦原数组长度不够会创建新数组将原数组的元素复制到新数组中并将新元素添加到新数组中。 Vector是同步的。 |--ArrayList:底层是数组结构也是支持长度可变数组的。是不同步的。替代了Vector.因为效率高。 查询效率很高。 但是增删的效率很低。 |--LinkedList:底层是链接列表结构简称链表结构。是不同步的。这个中结构的好处对元素的增删非常效率很高。 查询的效率很低。 |--Set集中的方法和Collection一致只要重点注意它的子类对象即可。取出元素只能使用迭代器。 特点 1不包含重复元素。(最大的特点) 2这个集合存入元素的顺序和取出元素的顺序不一定一致。(具体的容器对象数据结构不同顺序也有不同) |--HashSet底层数据结构是哈希表不保证顺序是不同步的。 哈希表提供数组的查询效率而出现的。 将要存储的元素先通过哈希算法算出一个哈希值来标识存储的位置代表着元素。 要找元素时先将该元素通过哈希算法算出哈希值在通过哈希值到哈希表中去查找。 特点 1不关系元素的顺序。 2提高了查询效率。 3不可能出现重复元素因为哈希值都不同。即使相同会再次判断两个元素的equals内容是否相同。 如果内容也相同不存如果内容不同存储。 所以哈希表要保证元素的唯一性必须要依赖于两个方法。 1,hashCode 2,equals |--TreeSet可以给Set集合中的元素进行指定顺序的排序。非同步的。 默认情况下是通过元素的自然顺序排的序。 它保证元素唯一性的依据是看比较方法的返回结果是否是0.是0.就视为元素相同。不存。 TreeSet排序的方式一让元素自身具备比较性需要实现Comparable接口覆盖compareTo方法。 这种比较方式成为自然顺序排序。 如果元素自身不具备比较性或者具备的比较性(自然顺序)不是所需要的。 这时只能用第二种方式 。 TreeSet排序的方式二让容器自身具备比较性。容器一初始化就具备了比较功能。 因为容器时在对象构造时完成的。通过查阅有一个构造方法TreeSet(Comparator). 在容器初始化时可以指定一个比较器。 需要实现Comparator接口覆盖compare方法即可。 所以这种方式成为比较器排序。 LinkedHashSet内部使用散列以加快查询速度同时使用链表维护元素的次序. 【什么时候选择List 什么时候选择Set 呢】 当存入的的对象有重复时用List没有重复元素时用Set。