gpt4 book ai didi

java - Java 中数组初始值设定项内带有尾随逗号的数组

转载 作者:太空宇宙 更新时间:2023-11-04 11:33:02 24 4
gpt4 key购买 nike

数组初始值设定项可用于在编译时初始化数组。如下所示带有尾随逗号的初始值设定项可以正常编译。

int a[][] = {{1,2,} ,{3,4,} , {5,6,},}; //Trailing commas cause no compiler error

for(int i=0;i<a.length;i++)
{
for(int j=0;j<2;j++)
{
System.out.print(a[i][j]+"\t");
}
System.out.println();
}

输出:

1        2        
3 4
5 6
<小时/>

对于一维数组也是合法的,正如上面的讨论所示。

int[] b = {1, 2, 3, 4, 5, 6,}; //A trailing comma causes no compiler error

for(int i=0;i<b.length;i++)
{
System.out.print(b[i]+"\t");
}

输出:

1        2        3        4        5        6
<小时/>

甚至以下内容也是合法的语法并且可以正常编译。

int c[][] = {{,} ,{,} , {,},}; 

编译器应该期望在逗号 , 前后有一个常量值(或另一个初始值设定项)。这是如何编译的?编译器是否会简单地忽略此类逗号,或者在这种情况下会发生其他情况?

最佳答案

忽略尾随逗号。来自 Java specification :

A trailing comma may appear after the last expression in an array initializer and is ignored.

关于java - Java 中数组初始值设定项内带有尾随逗号的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43587768/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com