java中的数组元素标识符是啥?

Posted

技术标签:

【中文标题】java中的数组元素标识符是啥?【英文标题】:Are array elements identifiers in java?java中的数组元素标识符是什么? 【发布时间】:2015-06-08 21:51:08 【问题描述】:

Java documentation 表示标识符是“用 Java(TM) 编程语言编写的程序中项目的名称”,但这并没有指定 myList[0] 形式的东西是否算作myList 中的第一个元素。那么,myList[0] 算不算标识符?

【问题讨论】:

【参考方案1】:

不,myList 是数组的标识符,myList[0] 指的是该数组的索引 0 内的元素,它是对值类型的引用。

【讨论】:

【参考方案2】:

myList[0] 不是标识符。这是一个array access expression。本例中的标识符为myList

【讨论】:

注意:即使它不是标识符,arr[i] 仍然是 JLS 的“变量”:“这个 结果变量,它是数组的一个组件。 .",如果假设 'variable' 暗示标识符,这可能会导致不正确的术语。 @user2864740 你确定arr[i] 是一个变量吗? java glossary of terms 表示变量是“由标识符命名的数据项”,而arr[i] 似乎不是由标识符命名的。我试图在 Java 语言规范中找到定义,但找不到 if。 @Kyth'Py1k Here's JLS 中变量的定义。 @Kyth'Py1k 这是定义,这就是我添加注释的原因 - 当我第一次得知它在 Java 中被定义为这样时,我感到很惊讶! (在我知道的所有其他语言中,我会说它不是;但 Java 是 Java。)【参考方案3】:

检查这些定义的最终位置是JLS (Java Language Specification),而不是教程,这自然不那么正式。

根据上述规范,标识符不包括括号。因此myList[0] 不是标识符。

【讨论】:

以上是关于java中的数组元素标识符是啥?的主要内容,如果未能解决你的问题,请参考以下文章

Java初步认知和使用一维数组

Java数组学习笔记

Java语言编程基础:数组

Java新帮派——数组

java笔记 第八章

JAVA数组