为什么Java阻止声明int[]a、[]b类型的数组?
为什么不允许使用2个标识符声明数组,如下面提到的语法:-为什么Java阻止声明int[]a、[]b类型的数组?,java,Java,为什么不允许使用2个标识符声明数组,如下面提到的语法:- int []a,[]b; 在java中。我知道它会引发编译时错误,但我需要知道为什么不能用上述语法声明数组?您可以这样尝试: int[] a, b; int[]表示以下变量将是int数组 int表示以下变量将为int 因此: 意味着a和b将是int的数组。 然而: 意味着a将是一个整数数组,b将只是一个整数 int[]a运行良好。 int[]a,b是非法的 尝试将这些括号放在类型或变量名之后。查看 您也可以这样初始化它: int[][
int []a,[]b;
在java中。我知道它会引发编译时错误,但我需要知道为什么不能用上述语法声明数组?您可以这样尝试:
int[] a, b;
int[]
表示以下变量将是int数组
int
表示以下变量将为int
因此:
意味着a和b将是int的数组。
然而:
意味着a将是一个整数数组,b将只是一个整数
int[]a代码>运行良好。
int[]a,b代码>是非法的
尝试将这些括号放在类型或变量名之后。查看
您也可以这样初始化它:
int[][] a = new int[2][2]{
{1,2} // first row
{3,4}, // second row
};
int[]a、[]b代码>无效,因为[]
应使用类似int[]
的类型名称。在int[]
之后声明的变量将是int
类型的数组
你也可以这样做
int []a,b;
或
在java中声明数组时,JVM会为声明的数组创建一个类。例如int[]样本数组
将有一个类int[]。class
因此sampleArray
的类型将是int[]。class
为什么禁止使用上述语法声明数组?
int[]与int[]是不同的类型,因此它更适合于编写int[]a,b代码>大于整数a[],整数b[]
请参阅它不是C
,[]
是类型名称的一部分int[]
什么是“具有2个标识符的二维数组”?上述场景甚至适用于int[]C[],[]d[]以下的二维数组为什么不适合这样声明?“为什么禁止使用上述语法声明数组?”=>因为Java语法是这么说的。接受它。感谢您的回复,但您想知道可能的偏差,您能告诉我为什么在int[]c,[]d中阻止使用这种语法进行声明吗?
int[][] a = new int[1][2];
int[][] a = new int[2][2]{
{1,2} // first row
{3,4}, // second row
};
int []a,b;
int []a;
int []b;