国内最专业的IT技术学习网

UI设计

当前位置:主页 > UI设计 >

Java中的集合框架大总结

发布时间:2019/07/29标签:   遍历    点击量:

原标题:Java中的集合框架大总结
间接上图:

Java中的集合框架大总结
从下面的聚集框架图能够看到:Java聚集框架重要包含两品种型的容器,一种是聚集(Collection),存储一个元素聚集;另一种是图(Map),存储键/值对映照。Collection接口又有两个子接口,List和Set,再上面是一些形象类,最初是详细完成类,罕用的有ArrayList、LinkedList、HashSet、LinkedHashSet、HashMap、LinkedHashMap等等。聚集框架是一个用来代表和把持聚集的同一框架。全部的聚集框架都包括以下内容:接口:是代表聚集的形象数据范例。比方:Collection、List、Set、Map等。之以是界说多个接口,是为了以差别的方法操纵聚集工具。完成(类):是聚集接口的详细完成。从实质上讲,它们是可反复应用的数据构造,比方:ArrayList、LinkedList、HashSet、HashMap。除了聚集,该框架也界说了几个Map接口和类。Map里存储的是键/值对。只管Map不是聚集,然而它们完整整合在聚集中。Java聚集框架供给了一套机能精良,应用便利的接口和类,Java聚集框架位于java.util包中,以是当应用聚集框架的时间须要停止导包。1、聚集接口:1.CollectionCollection是最基础的聚集接口,一个Collection代表一组Object,即Collection的元素,Java不供给间接继续自Collection的类,只供给继续于Collection的子接口(如List和Set),Collection接口存储一组不惟一,没有次序的工具。2.ListList接口是一个有次序的Collection,应用此接口可能准确地操纵每个元素拔出的地位,可能经过索引(元素在List中的地位,相似于数组的下标)来拜访List 中的元素,第一个元素的索引为0,并且同意有雷同的元素。List接口存储一组不惟一,有序(拔出次序)的工具。3.SetSet存在与List完整一样的接口,只是行动上差别,Set不保留反复的元素。Set接口存储一组独一,无序的工具。4.MapMap接口存储一组键值对工具,供给key(键)到value(值)的映照。5.Map.EntryMap.Entry描写在一个Map中的一个元素(键/值对),是一个Map的外部接口。2、Set和List的差别:1.Set接话柄例存储的是无序的,不反复的数据。List接话柄例存储的是有序的,能够反复的元素。2.Set检索效力低下,删除和拔出效力高,拔出和删除不会惹起元素地位的转变,完成类有HashSet,TreeSet。3.List和数组相似,能够静态增加,依据现实存储的数据的长度主动增加List的长度。查找元素效力高,拔出删除效力低,由于会惹起其余元素地位转变,完成类有ArrayList,LinkedList,Vector。3、聚集完成类1.AbstractCollection:完成了大局部的聚集接口。2.AbstractList:继续于AbstractCollection而且完成了大局部List接口。3.LinkedList:该类完成了List接口,同意有null元素。重要用于创立链表数据构造,LinkedList查找效力低。4.ArrayList:该类也是完成了List的接口,完成了可变巨细的数组,随机拜访和遍历元素时,供给更好地机能。5.AbstractSet:继续于AbstractCollection而且完成了大局部Set接口。6.HashSet:该类完成了Set接口,不同意呈现反复元素,不保障聚集中元素的次序,同意包括值为null的元素,但最多只能有一个。7.LinkedHashSet:存在可预知迭代次序的Set接口的哈希表和链表列表完成。8.TreeSet:该类完成了Set接口,能够完成排序等功效。9.AbstractMap:完成了大局部的Map接口。10.HashMap:HashMap是一个散列表,它存储的内容是键值对(key-value)映照。该类完成了Map接口,依据键的HashCode值存储数据,存在很快的拜访速率,最多同意一笔记录的键为null,不支撑线程同步。11.TreeMap:继续了AbstractMap,而且应用一棵树。12.LinkedHashMap:继续于HashMap,应用元素的天然次序对元素停止排序。13.Vector:该类和ArrayList十分类似,然而该类是同步的,能够用在多线程的情形,该类同意设置默许的增加长度,默许扩容方法为本来的2倍。14.HashTable:HashTable是Dictionary(字典)类的子类,位于java.util包中。4、迭代器的应用(遍历聚集)1、遍历ArrayList/** * 采纳差别的方式遍历ArrayList聚集 * 此中采纳迭代器的方式能够不必担忧在遍历的进程中会超越聚集的长度 * */public class TestArrayList { public static void main(String[] args) { List

版权信息Copyright © IT技术教程 版权所有    ICP备案编号:鲁ICP备09013610号