A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 梦醒?! 中级黑马   /  2015-4-14 23:09  /  601 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

数组长度如果是零的话,还能往里面传数据吗,为什么

10 个回复

正序浏览
不能呗。两个不是一样的东西吧
回复 使用道具 举报
不,数组中长度是固定的
回复 使用道具 举报
据我了解不能的哦
回复 使用道具 举报
本帖最后由 aanihao 于 2015-4-16 14:46 编辑

如果这样玩int[] a = new int[0] ;               
                a[1] = 1;               
                System.out.println(String.valueOf(a[1]));

会有异常:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1
        at com.twenty.Test1.main(Test1.java:7)


所以我觉得是如果你真的要命令数组长度为0,那是不能存放东西的。有数组脚标越界异常
回复 使用道具 举报
梦醒?! 发表于 2015-4-15 10:56
可是主函数public static void main(String[] args)
{
      System.out.print(args.length);

只是这一个特例是吗,如果是建立一个数组,他的长度不能是0是吗
回复 使用道具 举报
数组长度为0不能往里面传入数据,主方法里面的(String[] args)其实并不是长度为零。
回复 使用道具 举报
并不能。。。
回复 使用道具 举报
12300123 发表于 2015-4-15 09:48
不能,数组长度是固定的。长度是多少都不能往里面传数据。

可是主函数public static void main(String[] args)
{
      System.out.print(args.length);
}
这个数组的长度就是0,而且在java时后面跟上数据就能够存进去啊

点评

这个数组长度不见得是0,它只是参数类型声明,实际长度有赖于输入命令  发表于 2015-4-16 12:23
回复 使用道具 举报
不能,数组长度是固定的。长度是多少都不能往里面传数据。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马