数组创建----Array constants can only be used in initializers

前一种为动态初始化,后一种为静态初始化,简单说一下区别:
①静态初始化,申明和赋值在同一行;
②动态初始化也指定了长度,在内存中申请了指定长度的空间,而每个元素的值取数组数据类型的默认值,比如:

* Boolean型是 false;
* 其他七种为0;
* 复合类型为null

swanky_yao (初级程序员) 2010-06-01
int[] num=new int[]{1,2,3,4,5};
然后num还可以new int[]{1,2,3};
num 此时只是一个int数据类型的引用
int[] num={1,2,3,4,5};
如果num={1,2,3}
Eclipse会提示
Array constants can only be used in initializers
翻译过来就是 数组变量只能在初始化以后才能被引用(使用)
至于为什么我也不知道
不过我一般都用 new
貌似浪费点内存

antiwise (资深程序员) 2010-06-01
引用

书上压根就没提这种方式,但是书中给的例子中出现了这种方式。

这是两种基本方式:构造式和字面量式。很多编程语言都有这两种方式。

你可能感兴趣的:(java综合,Eclipse,编程)