数组与ArrayList_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > 数组与ArrayList

数组与ArrayList

 2015/5/3 4:08:18  chou_qi  程序员俱乐部  我要评论(0)
  • 摘要:首先纠正一个大家基本理论上大多数存在的认知错误:ArrayList不是链表,是一个动态数组(大小可变)通常大家包括我自己一直认为ArrayList是链表结构,因为ArrayList单词中含有一个List其实我们都没注意过ArrayList中的Array数组1.数组JAVA中涉及到的容器中数组查询效率最高,在其它语言中也应该是通用的,数组与链表是两种结构,数组的连续内存就保证了查询时的效率最高。数组的优缺点:(1)查询效率高(2)内存利用率低:数组内存都是连续的,不像链表那样可以根据地址进行连接
  • 标签:list 数组

??????? 首先纠正一个大家基本理论上大多数存在的认知错误:ArrayList不是链表,是一个动态数组(大小可变)

通常大家包括我自己一直认为ArrayList 是链表结构,因为ArrayList 单词中含有一个List其实我们都没注意过

ArrayList中的Array数组

?

1.数组

????? JAVA中涉及到的容器中数组查询效率最高,在其它语言中也应该是通用的,数组与链表是两种结构,数组的连续内存就保证了查询时的效率最高。

????? 数组的优缺点:(1)查询效率高

???????????????????????????????(2)内存利用率低:数组内存都是连续的,不像链表那样可以根据地址进行连接。

???????????????????????????????(3)增删效率低:数组内存的使用方式决定了,每当删除或增加一个元素时,都涉及后续

???????????????????????????????????????? 元素跟随移动。

??????使用场景:在存储数据只用查询操作时,没有增加caozuo.html" target="_blank">删除操作时,且数据量较大,对程序性能有较高要求,内存资源足够时,在这几个条件都符合时一定要用数组。

????? 程序的性能,是由每个程序员代码是否是最优决定的,当然当要求快速开发时,果断放弃性能最优代码要求,没有十全十美的,还想马儿跑得快,还不给优质的马料,这样的公司或领导不配拥有高性能程序,让他拿着堆出来的代码邀功去吧。

?

2.ArrayList

???????????ArrayList是一种动态数组,只不过java中对这个数组做了处理,成了可变长的数组

ArrayList 使用场景是:数据量不太大时,用就行了,比数组性能低但是比链表性能高,而且不用考虑其它因素,

发表评论
用户名: 匿名