社区
Java SE
帖子详情
array和arraylist
zyh207net
2011-08-08 04:44:27
本人一个j2ee菜鸟,在以前写j2se的时候很多的时候用到数组,因为牵扯到很多逻辑上的数,现在做家
ee却发现一个项目很多取存对象都是用List list=new ArrayList();我知道他们有区别,一个是数组结构一个是链表结构。但是其实质是什么?请求解答。。。
...全文
142
12
打赏
收藏
array和arraylist
本人一个j2ee菜鸟,在以前写j2se的时候很多的时候用到数组,因为牵扯到很多逻辑上的数,现在做家 ee却发现一个项目很多取存对象都是用List list=new ArrayList();我知道他们有区别,一个是数组结构一个是链表结构。但是其实质是什么?请求解答。。。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
12 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
lord_is_layuping
2011-08-09
打赏
举报
回复
[Quote=引用 5 楼 xiaomiao13 的回复:]
ArrayList应该是用数组实现的,功能要比array强大;
1. Array类型的变量在声明的同时必须进行实例化(至少得初始化数组的大小),而ArrayList可以只是先声明;
2. Array初始化时必须指定大小;ArrayList则不需要,会指定一个默认长度,并且随着对象个数自动增长;
3. Array只能存放一种类型的对象,list则没有这个限制,除非使用泛型;
4. Arra……
[/Quote]
ArrayList 自动扩展、只能存放对象而非原始类型数据、顶一下
luohuijun619
2011-08-09
打赏
举报
回复
可以说ArrayList是个动态数组,集合,array就只是数组,
SDMRauquin
2011-08-09
打赏
举报
回复
引用坟 http://topic.csdn.net/t/20040909/21/3357649.html
赞同里面18楼的
lliiqiang
2011-08-09
打赏
举报
回复
ArrayList长度可以变
Array不能变
lost_guy_in_scut
2011-08-08
打赏
举报
回复
[Quote=引用 5 楼 xiaomiao13 的回复:]
ArrayList应该是用数组实现的,功能要比array强大;
1. Array类型的变量在声明的同时必须进行实例化(至少得初始化数组的大小),而ArrayList可以只是先声明;
2. Array初始化时必须指定大小;ArrayList则不需要,会指定一个默认长度,并且随着对象个数自动增长;
3. Array只能存放一种类型的对象,list则没有这个限制,除非使用泛型;
4. Arra……
[/Quote]
嗯嗯。List是个接口,而ArrayList是具体实现类,ArrayList封转了一系列的操作,嗯,底层是用数组实现的。
daijope
2011-08-08
打赏
举报
回复
ArrayList的底层结构是一个数组 Object[],与我们普通的数组的差别在于他给我们封装了很多很实用的方法,如add,iterator(),这样功能变强大了,我们使用也方便了。LinkedList的底层实现是链表。像ArrayList与LinkedList的差别与数组与链表的差别一样,当插入时链表就很高效,当查询是数组就很高效,我们不用去遍历整个链表,,,,
softroad
2011-08-08
打赏
举报
回复
LS new ArrayList(10) 他的size是多少?
xiaomiao13
2011-08-08
打赏
举报
回复
ArrayList应该是用数组实现的,功能要比array强大;
1. Array类型的变量在声明的同时必须进行实例化(至少得初始化数组的大小),而ArrayList可以只是先声明;
2. Array初始化时必须指定大小;ArrayList则不需要,会指定一个默认长度,并且随着对象个数自动增长;
3. Array只能存放一种类型的对象,list则没有这个限制,除非使用泛型;
4. Array不能删除元素,只能置null;ArrayList可以随意add或delete某个元素;
qybao
2011-08-08
打赏
举报
回复
arraylist是通过底层的对数组的操作来实现的,除了提供了链表的操作接口和自动扩大容量外,底层实现和数组是一回事,包括插入操作的数组元素移动等等
softroad
2011-08-08
打赏
举报
回复
建议楼主看看Arraylist源码, ArrayList其实把数据存储在一个Object数组里,然后所有方法都是针对数组操作的。
比如addAll调用了System.arraycopy 等等。
wtc860104
2011-08-08
打赏
举报
回复
就是数组
龙四
2011-08-08
打赏
举报
回复
实质就是ArrayList底层就是一个数组,只不过提供了一些便利的API供你操作这个数组,否则你要自己处理,如数组长度不够了要扩容,查找数据等
Java进阶课程系列之
Array
List
集合底层源码实战分析
Array
List
允许空值和重复元素,当往
Array
List
中添加的元素数量大于其底层数组容量时,其会通过扩容机制重新生成一个更大的数组。另外,由于
Array
List
底层基于数组实现,所以其可以保证在 O(1) 复杂度...
C#中的
Array
和
Array
List
C#中的
Array
和
Array
List
大家好,我是苏州程序大白,讲讲上个文章提到的
Array
。内容有点多。我这里会持续更新,希望大家关注我、支持我,谢谢大家。不废话了下面我们开始。
Array
和
Array
List
数组是最通用的数据...
Array
和
Array
List
有什么区别呢?
Array
和
Array
List
有什么区别呢?
Array
和
Array
List
之间真正的区别
Java中
Array
和
Array
List
的区别
Array
和
Array
List
的异同点
Array
和
Array
List
的异同点 相信数组是大家在编程最常使用的,不论任何语言都存在数组这样的数据结构,由于C#语言是完全面向对象的,所以在C#中的数组也是对象, 实际上就是
Array
类的实例,
Array
类的使用...
Java SE
62,614
社区成员
307,326
社区内容
发帖
与我相关
我的任务
Java SE
Java 2 Standard Edition
复制链接
扫一扫
分享
社区描述
Java 2 Standard Edition
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章