2018-12-02 21:15:19 卢浮宫 版权声明:本文为站长原创文章,转载请写明出处
①集合:单列结合和双列结合,单列结合有列表中,设置双列结合有地图
----- list:有序存储,可以重复,添加是执行add()方法,当重复添加时是多个索引执行同一个对象,同时列表可以指定位置添加,add(int index)。获取指定位置的元素get(int index)。
------ ArrayList的:数组实现,查找快,增删慢:由于是数组实现,在增删是牵涉到数组的增容以及拷贝元素,所以慢因为是可以直接按索引进行查找的所以检索的时会快一点。
-------链表:链表的形式体现的,增删快,查找慢链表的形式实现机制使得在增加时只要让前一个元素记住自己,删除时让豁免一个元素记住自己就行。但是在查询的时候要进行遍历,所以查询的会慢。
-------矢量:和ArrayList的原理相同,但线程安全的只是效率低。
--------组:无序的,不可重复.SET在判定是否重复的时候是调用的等于方法,如果已经存在一个元素A,那么在插入一个与一个的rquals方法为真实的乙是返回的布尔值为FALSE,无法添加。
------ HashSet的:线程不安全,底层是以哈希表实现的,存取速度快。
------- TreeSet中:树形数据结构,默认对元素进行排序。
②集合:双列集合,地图:已键值对的形式来进行存储。关键是唯一的,不可重复,值可以重复。
------ HashMap的:底层是以哈希表实现的,存取速度快,线程不安全。
------ TreeMap中:树形结构,默认对元素进行排序。
------哈希表:底层也是用了哈希表,存取的速度快,储存的元素是无序的。