一、基础
1、ArrayList集合底层是Object[]数组
2、默认容量10(优先:Add第一个元素,初始化未0,jdk13)
3、构造方法:无参(默认)、有参
4、ArrayList集合扩容比例是原容量的1.5倍;尽可能是的少扩容;建议初始化的时候预估容量,给定数量
5、数组特点:随机删除效率较低,但向数组末尾添加元素效率很高,优点:搜索效率较高
6、集合中ArrayList集合使用较多
 
二、ArrayList构造方法
举例说明:
 
三、LinkList双向链表
1、链表优点:随机增删元素效率较高
2、链表缺点;查询效率较低
3、LinkList集合无初始化容量:
不管是LinkList还是ArrayList,以后写代码时不需要关注具体是哪个集合,因为我们要面向对象编程,调用的方法都是接口中的的方法
List list1=new ArrayList();//表示底层用了数组
List list2=new LinkedList();//表示底层用来双向链表
4、举例说明
 
四、Vector集合
1、底层也是数组
2、初始化容量为10,扩容为原容量的2倍;
10-->20-->40-->80
3、vector中所有方法都是线程安全的,Synhronized关键字
List vector=new Vector();
4、怎么将一个线程不安全的ArrayList集合转化为线程安全的呢?
使用集合工具类:Java.untill.Collections;
集合接口为:Java.until.Collection;
5、举例说明
 
 
 

java进阶(24)--ArrayList集合、LinkList集合、Vector集合的更多相关文章

  1. java基础31 List集合下的Vector集合

    单例集合体系: ---------| collection  单例集合的根接口--------------| List  如果实现了list接口的集合类,具备的特点:有序,可重复       注:集合 ...

  2. 【Java面试题】54 去掉一个Vector集合中重复的元素

    在Java中去掉一个 Vector 集合中重复的元素 1)通过Vector.contains()方法判断是否包含该元素,如果没有包含就添加到新的集合当中,适用于数据较小的情况下. import jav ...

  3. Java:List,ArrayList和LinkList的区别

    1.大学数据结构中ArrayList是实现了基于动态数组的数据结构,LinkList基于链表的数据结构 2.对于随机访问get和set,ArrayList优于LinkList,因为LinkedList ...

  4. ArrayList、LinkList、Vector的区别

    ArrayList.LinkedList和Vector均实现了List接口,均为可伸缩数组(均为可动态改变长度的数组).它们是有序的集合,并且其中的元素允许重复. 从底层实现来看: (1)ArrayL ...

  5. java进阶文章优选链接,面试干货集合

    Java多线程: java多线程详细总结:https://blog.csdn.net/chenruijia170707/article/details/78505351 ThreadLocal 用法及 ...

  6. java 数据类型:ArrayList;LinkList性能分析

    各种线性表的性能分析. java提供的List就是一个线性表接口,ArrayList和LinkedList是线性表的两种实现.基于数组的线性表和基于链表的线性表. 一般来说,我们无需理会ArrayLi ...

  7. Java进阶(十七)ArrayList与LinkedList的区别

    ArrayList与LinkedList的区别 ArrayList ArrayList其实是包装了一个数组 Object[],当实例化一个ArrayList时,一个数组也被实例化,当向ArrayLis ...

  8. Java集合之ArrayList与LinkList

    注:示例基于JDK1.8版本 参考资料:Java知音公众号 本文超长,也是搬运的干货,希望小伙伴耐心看完. Collection集合体系 List.Set.Map是集合体系的三个接口. 其中List和 ...

  9. Java集合系列(二):ArrayList、LinkedList、Vector的使用方法及区别

    本篇博客主要讲解List接口的三个实现类ArrayList.LinkedList.Vector的使用方法以及三者之间的区别. 1. ArrayList使用 ArrayList是List接口最常用的实现 ...

  10. Java集合(2)一 ArrayList 与 LinkList

    目录 Java集合(1)一 集合框架 Java集合(2)一 ArrayList 与 LinkList Java集合(3)一 红黑树.TreeMap与TreeSet(上) Java集合(4)一 红黑树. ...

随机推荐

  1. 《HelloGitHub》第 93 期

    兴趣是最好的老师,HelloGitHub 让你对编程感兴趣! 简介 HelloGitHub 分享 GitHub 上有趣.入门级的开源项目. https://github.com/521xueweiha ...

  2. 使用dtd定义元素

  3. Ef Core花里胡哨系列(7) 使用Ef Core也能维护表架构?

    Ef Core花里胡哨系列(7) 使用Ef Core也能维护表架构? 我们这里指的并不是查询,而是利用Ef的迁移原理,生成可用的其它表架构操作的Sql. 例如你想在Ef Core里建表,并且可能程序里 ...

  4. C#/.NET/.NET Core优秀项目和框架2023年12月简报

    前言 公众号每月定期推广和分享的C#/.NET/.NET Core优秀项目和框架(公众号每周至少推荐两个优秀的项目和框架当然节假日除外),公众号推文有项目和框架的介绍.功能特点以及部分功能截图等(打不 ...

  5. 【推荐】Helix的编程语言配置

    目录 编程语言 languages.toml 语言配置 探测文件类型 编程语言服务 为一个编程语言配置语言服务 Tree-sitter 语法配置 选择语法 编程语言 编程语言设置以及语言服务器设置位于 ...

  6. 升级高版本springboot2.6.x:org/springframework/boot/context/properties/ConfigurationBeanFactoryMetadata

    升级springboot高版本2.6.x 项目使用到了springcloud的oauth2依赖,直接升级springboot项目版本为最新 2.6.8(2022年6月16日)将会报以下错误: org/ ...

  7. CSS3学习笔记-动画

    CSS3中提供了许多有趣和实用的动画效果,可以使页面更加生动有趣,下面介绍一些常用的动画效果. @keyframes规则 使用@keyframes规则可以创建一系列动画帧,并定义它们的状态和样式,在页 ...

  8. 文心一言 VS 讯飞星火 VS chatgpt (51)-- 算法导论6.2 3题

    三.当元素 A[i] 比其孩子的值都大时,调用 MAX-HEAPIFY(A.i)会有什么结果? 文心一言: 当元素 A[i] 比其孩子的的值都大时,调用 MAX-HEAPIFY(A, i) 会将 A[ ...

  9. .NET技术分享日活动-202202

    2022年02月19日下午,个人组织举办了山东地区的第四次.NET技术分享日活动.主要包含.NET常用技术.低代码.大前端.大数据和工作流等五个技术领域. 本次技术分享日活动面向了山东地区广大的.NE ...

  10. 重磅更新!Sermant 1.2.0 release版本新特性速览

    本文分享自华为云社区<重磅更新!Sermant 1.2.0 release版本新特性速览>,作者:华为云开源. 10月,Sermant社区正式发布了1.2.0 release版本,距离上一 ...