栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

java集合框架的小结

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

java集合框架的小结

Collection下面有子接口Set和List
List下面有三个实现类:ArrayList、LinkedList、Vector
ArrayList:线程不安全、效率高、存的是Object,是主要使用的集合
LinkedList:适用于频繁插入、删除操作
Vectory:底层加了同步锁,线程安全的,但如果遇到要求保证线程安全问题,依旧很少使用它,而是使用SynchronizedList(List list) 方法将集合作为参数传入来实现线程安全
集合库容方式
ArrayList、LinkedList、Vectory初始长度是10,扩容倍数为1.5倍、?、2倍
另外:StringBuffer初始长度是16,扩容倍数是2倍
JDK7和jdk8的区别:
ArrayList:7是一开始new ArrayList的时候就实例化,而jdk8是在调用add() 方法是才实例化
Set集合

  • 它的无序是按计算出来的哈希值进行存储的

  • LinkedhashSet:是在每个节点维护了两个变量,用来记录前后两个数据

  • TreeSet:可以按照添加对象的指定属性进行排序:

     	 - 自燃排序:待排序的对象实现Comparable接口,并实现CompaerTo方法
     	 - 定制排序
    

为什么要重写hashCode()、equals()两个方法:
在Set集合中要保证不重复元素,在使用add()方法添加元素时,首先调用HashCode()来比较数据,在比较相同的情况下,再调用equals()方法来进行比较,从而保证唯一性。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/820610.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号