本文共 824 字,大约阅读时间需要 2 分钟。
随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666)、QQ技术交流群(183198395)。
一、集合的特点:元素类型可以不同,集合长度可变、空间不固定
java中对一些数据结构和算法进行了封装即集合。集合也是一种对象,用于存储、检索、操作和传输对象 JCF集合框架。它提供了用于管理集合的接口和类。 二、集合框架: 接口:1.Collection:(List(线性元素可重复)、set(元素不可重复)) 2.Map(键值对:一个元素放两个对象,键不能重复) 实现类:List:ArrayList、Vector、LinkedList set:HashSet Map:HashMap、TreeMap、Hashtable 算法:Iterator、Collections 三、集合和数组的区别: 1、集合中只能放对象的引用。数组可以是基本类型也可以是引用类型。 2、集合的长度可以随元素的多少自动扩展,而数组建好后长度不可改变。 3、集合中可以存放不同类型的元素,而数组中元素的类型一致。 4、集合中有很多定义好的算法,使用集合进行对象的存储、检索、操作和传输会很方便。 四、List集合常见实现类的区别: ArrayList:底层采用数组实现,空间连续。遍历元素速度快,但中间插入和删除元素速度慢。线程不安全。 Vector:底层也采用数组实现,线程安全。 LinkedList:是不连续的空间。采用双向链表实现,每个元素除了存放数据外,还要存放上一个元素和下一个元素的地址。 中间插入和删除元素速度快。但遍历速度慢。五、HashMap和HashTable的区别和联系:
1、HashMap和HashTable都是Map集合接口的实现类 2、HashMap允许null键和null值,但HashTable不允许 3、HashMap线程不安全,而HashTable线程安全。 TreeMap :自动按键排序。
转载地址:http://zvtei.baihongyu.com/