黑马程序员技术交流社区

标题: 新人,问一个问题 [打印本页]

作者: 15836999770    时间: 2014-12-10 22:28
标题: 新人,问一个问题
数组有长度限制么
作者: 15836999770    时间: 2014-12-10 22:35
占个前排,坐等大神回复
作者: 曹震国    时间: 2014-12-10 22:42
有,在初始化时就定义好了长度,不可更改。
作者: 史云龙    时间: 2014-12-10 22:43
算是有吧。
java规定数组的长度只要整型就可以的,所以理论上最大长度是整型的最大值2147483647
不过这个最大长度一般用不到。
作者: chudaming213    时间: 2014-12-10 23:08
初始化数组时需要分配内存,大小必须指定。不限长度就可以考虑用集合了。**数组长度固定,但是集合长度是可变的;**数组可以存储对象,还可以存储基本数据类型,而集合只能存储对象;**数组存储的类型是固定的,而集合存储的数据的类型是不固定的。
作者: zmhlnrs    时间: 2014-12-10 23:13
貌似有长度限制

作者: lidinghai    时间: 2014-12-10 23:53
当然有。
作者: 安卓小蜗牛    时间: 2014-12-11 00:20
有,看你定义的什么数组
作者: lwh316658735    时间: 2014-12-11 11:13
看你虚拟机分配的内存是多少,越大数组的长度就越大。
作者: 15836999770    时间: 2014-12-11 21:10
哦哦 懂了 谢谢各位大大
作者: songkaihua    时间: 2014-12-11 21:25
数组的定义 是必须初始化的因为要向内存 申请空间的.得有值
作者: wangcongwu    时间: 2014-12-11 22:33
数组长度和jvm 的默认长度有关,默认的是64 兆,如果你把jvm 的默认长度弄长了就能更长,但是你的机器,也就是内存有多大你的数组的极限就有多大,但是当你达到了机器内存的全部之后你机器就死机了,所以我估计数组最大长度是小于你的机器内存。
作者: Hello_Boys    时间: 2014-12-13 13:44
有,初始化的时候就一定确定它的长度
作者: 擒贼先擒王    时间: 2014-12-13 21:41
有,要不然编译会出错的:D




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