当前位置: 首页 > news >正文

Java知识点总结(Java容器-Vector)

Java知识点总结(Java容器-Vector)

Vector

与ArrayList相似,但是Vector是同步的。所以说Vector是线程安全的动态数组。它的操作与ArrayList几乎一样。

ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动等内存操作,所以索引数据快插入数据慢,Vector由于使用了synchronized方法(线程安全)所以性能上比ArrayList要差,LinkedList使用双向链表实现存储,按序号索引数据需要进行向前或向后遍历,但是插入数据时只需要记录本项的前后项即可,所以插入数度较快!

  1. vector是线程同步的,所以它也是线程安全的,而arraylist是线程异步的,是不安全的。如果不考虑到线程的安全因素,一般用arraylist效率比较高。
  2. 如果集合中的元素的数目大于目前集合数组的长度时,vector增长率为目前数组长度的100%,而arraylist增长率为目前数组长度的50%.如过在集合中使用数据量比较大的数据,用vector有一定的优势。
  3. 如果查找一个指定位置的数据,vector和arraylist使用的时间是相同的,都是0(1),这个时候使用vector和arraylist都可以。而如果移动一个指定位置的数据花费的时间为0(n-i)n为总长度,这个时候就应该考虑到使用linklist,因为它移动一个指定位置的数据所花费的时间为0(1),而查询一个指定位置的数据时花费的时间为0(i)。

相关文章:

  • mybatis返回部分字段为空的问题
  • Confluence 6 SQL Server 数据库驱动修改
  • Python常见问题系列
  • ES6系列(二)变量的解构赋值
  • 超简单的视频对象提取程序
  • [Java并发编程实战] 共享对象之可见性
  • Java实用类库
  • MySQL常见的两种存储引擎:MyISAM与InnoDB的爱恨情仇
  • 『TensorFlow』线程控制器类变量作用域
  • Git漏洞导致攻击者可在用户电脑上运行任意代码
  • [译] 不用祖传秘方 - 写好代码的几个小技巧
  • el-input获取焦点 input输入框为空时高亮 el-input值非法时
  • 安装Cassandra数据库和访问客户端配置
  • CSS中background-position使用技巧
  • java调用IPFS去中心化体系
  • 2017 前端面试准备 - 收藏集 - 掘金
  • Angular4 模板式表单用法以及验证
  • ComponentOne 2017 V2版本正式发布
  • Docker 笔记(1):介绍、镜像、容器及其基本操作
  • FineReport中如何实现自动滚屏效果
  • Java Agent 学习笔记
  • JavaScript的使用你知道几种?(上)
  • JavaScript异步流程控制的前世今生
  • leetcode378. Kth Smallest Element in a Sorted Matrix
  • Odoo domain写法及运用
  • Spring Boot MyBatis配置多种数据库
  • vue-router 实现分析
  • vue从创建到完整的饿了么(18)购物车详细信息的展示与删除
  • 理清楚Vue的结构
  • 前端面试之闭包
  • 前端学习笔记之原型——一张图说明`prototype`和`__proto__`的区别
  • 入门级的git使用指北
  • 深入 Nginx 之配置篇
  • 推荐一个React的管理后台框架
  • 学习笔记:对象,原型和继承(1)
  • 一份游戏开发学习路线
  • 用Visual Studio开发以太坊智能合约
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • $Django python中使用redis, django中使用(封装了),redis开启事务(管道)
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (Pytorch框架)神经网络输出维度调试,做出我们自己的网络来!!(详细教程~)
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (十六)一篇文章学会Java的常用API
  • (转) 深度模型优化性能 调参
  • (转)德国人的记事本
  • (转载)Linux 多线程条件变量同步
  • .NET Compact Framework 3.5 支持 WCF 的子集
  • .net core 6 使用注解自动注入实例,无需构造注入 autowrite4net
  • .Net+SQL Server企业应用性能优化笔记4——精确查找瓶颈
  • .net6+aspose.words导出word并转pdf
  • .NET企业级应用架构设计系列之开场白
  • .Net中间语言BeforeFieldInit
  • /usr/lib/mysql/plugin权限_给数据库增加密码策略遇到的权限问题
  • @reference注解_Dubbo配置参考手册之dubbo:reference
  • [Android]如何调试Native memory crash issue