这个为啥错了?为什么不能这样搞这个数组?错在哪里?

img

为什么不能这样定义数组,不是有四个数四个格子吗?为什么错了,错在哪里了?

java里面就没有这样定义数组的语法规则,因为方括号里面的4表示数组的长度,而大括号里面的元素个数也表示数组的长度,这样的话,定义的数组就不知道到底多长,所以这种语法就有问题。
定义数组的方式:
1、String[] s=new String[6]
2、String[] str=new String[]{"a","b","c"}
3、String[] str2={"a","b","c"}

你把这一页书反过去,书上就告诉你为啥这样写不行了。

两种定义方式

 int[] arr = new int[4];
 int[] arr1 = {1,2,3,4};
1.Java静态数组,顾名思义,是静态不变的,在内存中位于栈区,是在定义时就已经在栈上分配了固定大小,在运行时这个大小不能改变,在函数执行完以后,系统自动销毁; int arr[] = new [] {1,2};在声明静态数组时后边不能指定数组的长度,这个🈶jvm自动计算数组大小