文档章节

Arrylist、linkelist、vector之间的区别

刘谱_smile
 刘谱_smile
发布于 2015/10/23 16:38
字数 425
阅读 566
收藏 7
点赞 0
评论 0


ArrayList,LinkedList是不同步的,而Vector是同步的,Vector适合线程使用,

ArrayList和Vector都是使用Objec的数组形式来存储的,当元素数目超出其长度时,Vector缺省情况下自动增长原来一倍的数组长度,ArrayList是原来的50%,


ArrayList和LinkedList的大致区别:
     1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。
     2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。
     3.对于新增和删除操作add和remove,LinedList比较占优势,因为ArrayList要移动数据。


ArrayList,在末尾增加或删除一条数据,所花的开销都是固定的,若在中间插入或删除一个元素意味着这个列表中剩余的元素都会被移动,花费大,

LinkedList 是通过指针移动,所以在前后,中间插入删除都是一样的。但LinkedList不 支持高效的随机元素访问。


可以这样说:当操作是在一列 数据的后面添加数据而不是在前面或中间,并且需要随机地访问其中的元素时,使用ArrayList会提供比较好的性能;当你的操作是在一列数据的前面或中 间添加或删除数据,并且按照顺序访问其中的元素时,就应该使用LinkedList了。

所以,如果只是查找特定位置的元素或只在集合的末端增加、移除元素,那么使用Vector或ArrayList都可以。如果是对其它指定位置的插入、删除操作,最好选择LinkedList    

© 著作权归作者所有

共有 人打赏支持
刘谱_smile
粉丝 3
博文 34
码字总数 20671
作品 0
长沙
Android ArrayList

在Android开发中我们经常需要对数据进行分类和操作,对于轻量级的数据存储我们可能不需要动用SQLite或效率以及类库不完善的XML, 由于 SharedPreferences不具备数据枚举方法,如果仅仅是一个...

SRain215
2016/03/16
44
0
我这样抓取豆瓣图书信息思路有错吗?希望大神们帮帮忙

1、我的想法是,首先得到textfield的值,然后发送http请求给豆瓣服务器,得到它返回的json格式的字符串;这里以作者作为参数传进去后,存在多个json格式的json对象返回。(这里我存在问题:怎...

_Br
2012/12/27
509
4
java中List接口的实现类 ArrayList,LinkedList,Vector 的区别 list实现类源码分析

java面试中经常被问到list常用的类以及内部实现机制,平时开发也经常用到list集合类,因此做一个源码级别的分析和比较之间的差异。 首先看一下List接口的的继承关系: list接口继承Collectio...

分享达人
2016/03/13
0
0
对C#中Hashtable和ArryList的理解

1.HashTabel 在.NET Framework中,Hashtable是System.Collections命名空间提供的集合对象,同时它也是一个可变长的数组,用于处理和表现类似key/value的键值对,其中key通常可用来快速查找,...

晨曦之光
2012/05/16
125
0
Java中Vector和ArrayList的区别

首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList、Vector和LinkedList。List用于存放多个元素,能够维护元素的次序,并且允许元素的重复。3个具体实现类的相关区别...

若有思无
2015/01/12
0
0
Java中Vector和ArrayList的区别

首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList、Vector和LinkedList。List用于存放多个元素,能够维护元素的次序,并且允许元素的重复。3个具体实现类的相关区别...

wenqi_arthur
2014/10/20
0
0
广告图片自动轮播控件

自定义广告轮播 自定义控件ImageCycleView 每个广告页的对象(包含具体显示图片、内容、id等) 自定义广告控件 ImageCycleView 每个广告页的对象 主函数FirstFragment.java 填充Arrylist<AD...

LizRose
2016/07/20
56
0
Java中Vector和ArrayList的区别

首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList、Vector和LinkedList。List用于存放多个元素,能够维护元素的次序,并且允许元素的重复。3个具体实现类的相关区别...

bxst
06/26
0
0
Java中Vector和ArrayList的区别

首先看这两类都实现List接口,而List接口一共有三个实现类,分别是ArrayList、Vector和LinkedList。List用于存放多个元素,能够维护元素的次序,并且允许元素的重复。3个具体实现类的相关区别...

ke_ry
2016/08/29
0
0
java的集合类有哪些他们之间的关系有什么区别

Java API中所用的集合类,都是实现了Collection接口,他的一个类继承结构如下: Collection<--List<--Vector 数组实现 查询快、增删慢 Collection<--List<--ArrayList 数组实现 查询快、增删...

笑容掩饰爱
2017/09/22
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

华为nova3超级慢动作酷玩抖音,没有办法我就是这么强大

华为nova3超级慢动作酷玩抖音,没有办法我就是这么强大!华为nova3超级慢动作酷玩抖音,没有办法我就是这么强大! 在华为最新发布的nova 3手机上,抖音通过华为himedia SDK集成了60fps、超级...

华为终端开放实验室
9分钟前
0
0
多 SSH Key 实现同一台服务器部署多 Git 仓库

本文以以下需求为背景,介绍详细的做法: 需在同一台服务器同时部署两个不同的 Github 仓库(对 Bitbucket 等 git 服务同样适用) root 用户可在远程登录 SSH 后附上预期的 SSH Key 进行 gi...

yeahlife
11分钟前
0
0
003. es6数值的扩展

一、普通扩展 Number 方法,将字符串、数值转为十进制 : Number('0b111') Number.isFinite() 用来检查一个数值是否为有限的:Number.isFinite(15) Number.isNan() 用来检查一个值是否为NaN N...

秋季长青
25分钟前
0
0
rabbitmq学习(二)

基本队列:Producer直接发送信息到Queue中,Consumer接收Queue发送过来的信息 简而言之,一个生产者发送信息,一个消费者接收信息。 获取连接工具类: package com.example.demo.utils;i...

人觉非常君
29分钟前
0
0
C语言数组和指针的语法糖

对于C语言,我可以这样秀:比如当创建一个数组arr[n]之后,一般我们去遍历数组的时候是for (int i = 0; i < n; i++) { a[i]; }但是我知道下表访问符[]是个语法糖,也就是说a[i]在编译器看来是...

ustbgaofan
33分钟前
0
0
Call to undefined function bcmath()的解决方法

乐意黎的ECS主机环境,Centos7.2 + PHP7 由于使用了bcdiv()函数,运行时总在抛错。 Fatal error: Call to undefined function bcmath() in /usr/loca/apache/htdocs/... on line 4 一查得知:......

dragon_tech
39分钟前
0
0
css优先级

..

architect刘源源
43分钟前
0
0
【转】Twitter的分布式自增ID算法snowflake

结构 snowflake的结构如下(每部分用-分开): 0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 00000 - 000000000000 第一位为未使用,接下来的41位为毫秒级时间(41位的长度可以...

talen
47分钟前
0
0
hive支持行级修改

Hive从0.14版本开始支持事务和行级更新,但缺省是不支持的,需要一些附加的配置。要想支持行级insert、update、delete,需要配置Hive支持事务。 一、Hive具有ACID语义事务的使用场景 1. 流式...

hblt-j
53分钟前
0
0
Python---scrapy框架的学习

scrapy框架的学习 先熟悉下scrapy项目结构: scrapyTest/scrapyTest/ _init_.py用来初始化项目信息 scrapyTest/scrapyTest/ items.py文件为爬虫项目的数据容器文件,主要用来定义我们的数据....

android-key
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部