java - 带逗号和不带逗号的数组

标签 java arrays

我正在创建包含少量元素的字符串数组。那时我注意到 我在第一个元素后加了逗号,它仍然可以编译。我以为它不会编译。然后我打印尺寸,上面写着 1

  String args [] = {request.getParentMessageID() , };
  System.out.println(args.length);

所以

String args [] = {request.getParentMessageID() , };  and String args [] = {request.getParentMessageID()};

两者的行为相同。

有人可以解释一下为什么它们没有什么不同以及为什么它可以编译。

最佳答案

像这样的数组初始化中的

Trailing comma 会被编译器忽略。通常会添加这些元素,以便稍后向数组添加内容时,只需添加元素即可,无需担心逗号。

所以它是允许的并且是一个有效的语法。 这也列在 JLS - Section#10.6 (Array Initializers) 中:-

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

关于java - 带逗号和不带逗号的数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13264482/

相关文章:

java - 马文 : Does project inheritance or aggregation better support this scenario?

java - 远程执行交互式 CLI 程序

java - 我通过intellij idea运行Kettle 8.3源,无法实例化类org.pentaho.di.engine.ui.RunConfigurationLifecycleListener

python - 在 Python 数组中查找对象索引的更有效方法

javascript - 用逗号分隔数组,javascript

java - Apache CXF 插件 - 故障生成客户端

java - 在光线追踪中,像平面在哪里?

php - 如何将 JSON 字符串转换为数组

java - 如何计算大于平均数的百分比?

c - 使用指针对字符串进行排序