日期:2014-05-20  浏览次数:21200 次

为什么数组下标(index)只能为int不能为long?
数组下标如果允许为long的话,岂不是可以储存更多元素?仅仅允许int类型作为数组下标,是不是有点太吝啬了?或者说,这么规定是有理由的?

------解决方案--------------------
一个小标为int的byte数组全部放满东西需要的内存为(2^31+1)*1b=2Gb=0.25GB
一个小标为long的byte数组全部放满东西需要的内存为(2^63+1)*1b
请问,楼主的机器有这么大的内存吗?
------解决方案--------------------
要在实用和效率之间权衡

引用:
楼主知道java int的最大值是多少吗

------解决方案--------------------
int应该够用了。如果不够用,还可以想其他办法替换,比如用多维数组。