黑马程序员技术交流社区

标题: 数组 [打印本页]

作者: 石钧    时间: 2012-4-24 10:55
标题: 数组
数组有着类似集合的功能,可是集合中有向集合中添加元素的方法,为什么我在数组中没有找到可以添加数组元素的方法呢?
作者: 黑马-刘昌文    时间: 2012-4-24 11:13
因为数组的长度是在创建的时候就确定了它的长度!以后不可改变,只能根据数组的索引来初始化数组中的各个元素,或是在创建的时候就初始化数组中的各个元素,如果索引大于了数组的长度就会引发数组越界的异常!
而集合就不一样了。它的长度是可以动态的改变的!所以有向集合中添加元素的方法!
作者: 姚伟涛    时间: 2012-4-24 11:21
数组,集合:一个对象管理多个对象
数组:不能自动增长,只能存放相同类型的元素
集合:允许自动扩容,部分集合允许存放不同类型的元素
作者: 真真姐    时间: 2012-4-24 11:36
本帖最后由 真真姐 于 2012-10-21 14:47 编辑

这个问题应该理解数组和集合的不同特点

数组:
1、数组在定义的时候长度是一定的,不管你怎么排序,长度不发生改变!
2、数组是连续的,且类型固定,如果里面变成了{1,2,null,4,5,6},或{1,2,6,a,9}这样的话就会报错
数组:便捷,适用范围局限

集合的几个特点:
1、长度可变,可以随着元素的增减而变化;
2、元素在内存中的地址不一定连续;且可以接受各种类型的元素。
要实现这些功能,官方编订了一些方法,Java中有集合类。集合相对复杂,有很多数组没有的功能!


作者: 王敏NO.09    时间: 2012-4-24 12:56
数组虽然也可以存储对象,但是长度是固定的;集合长度是可变的。数组中可以存储基本数据类型,集合只能存储对象。
作者: HeiMaYSL    时间: 2012-4-24 12:58
简单的说:
集合就好像一个随意添加,删除的容器吗。容器里究竟存多少东西,是不是你自己说了算,你随时都可以往里面添加或者删除。
而数组是一个事先定义好的容器,它因为,你事先已经确定了它的范围或长度。所以,你就不能在往里面添东西了。

主要区别就是:一个是事先定义好多大容器,而集合是一个不确定大小的容器,后面可以随便添加删除里面的内容。{:soso_e182:}
作者: 索学超    时间: 2012-4-24 15:18
数组的长度是固定的,在你定义初始化的时候就把长度给定好了,添加的时候也只能以“数组名[下标]=”的方法赋值。哪个下标必须是你定义的长度以内的,过了就出错了。貌似好像数组里面一旦你确定要放什么类型的数据就只能放什么类型的数据了.
集合吗,就是一个容器,想放什么元素就放什么元素,就好像一个箱子,你想往里面放什么就放什么,不限制你的类型,当然你可以有意识的放一种类型的。
作者: 崔仁军    时间: 2012-4-24 16:25
因为数组是在定义的时候就确定了数组的长度  如果要想向数组插入一个数  那么可以用for循环进行你想插入的位置  但是你插入的数的位置就会替代原来所在位置的数  而且你插入的位置的数必须是在数组的范围内   超出了数组的范围就会发生异常;   而集合却是一个定义去不却定大小的一个容器   容器的大小取决于你的插入得数的多少     会随着你不断的插入数 大小就会不断的增大
作者: 孙天    时间: 2012-4-24 18:07
集合长度不固定,数组只有一个属性那就是length,当数组初始化后长度也就固定了,不可添加元素。而像stringbuffer这样的,就是往后面接角标
集合数组的不同:
1,数组定义时,长度必须声明出来。集合定义时,可以不用声明长度
2,数组存储的是同一类型的数据。集合存储的是对象,对象可以是任意类型
3,数组可以存储基本数据值,集合只能存储对象




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2