25

我对标识符有点困惑。在我的教科书中,它说:“我们使用标识符来命名 Java 中的变量(和许多其他东西)。”

我不太确定这意味着什么。就像将变量分配给变量一样吗?什么?

到目前为止,我得到了这样的印象:

int a, b, c; a = 2; b = 99; c = a + b;

c标识符吗?当它说“使用标识符来命名变量”时,标识符是int用于doubleboolean变量进行分类的东西吗?请提供一些例子。

4

15 回答 15

32

您可以将标识符视为变量的名称。我不会为此太激动的。

例如:

int a;
a = 15;

在此示例中,a是一个标识符,它引用同名变量。如果a不是变量而是函数:

int a()
{
}

a();

然后a仍然是一个标识符,但它会标识一个函数。就像“Reena”可以识别个人和某种非营利组织一样。

于 2012-07-11T19:14:28.560 回答
6

我同意 GNU C 的定义,即 C 中有 5 个标记:关键字、标识符、运算符、常量和分隔符。Java 也是如此。

int不是标识符,因为它被定义为关键字。运算符从有效标识符符号列表中排除。常量只是值,但引用常量的名称是标识符。

基本上:只要不在关键字列表中,任何“单词”(一组 1 个或多个有效标识符符号)都是标识符。在 Java 中,有效的标识符符号是 Unicode 字母、数字、美元和下划线。数字不能是第一个符号。美元和下划线虽然有效,但不应使用,但在多字常量标识符(如MY_MAGIC_NUMBER = 6.

于 2015-11-24T08:39:09.133 回答
5

标识符只是变量的名称。所以对于变量c,标识符是实际的文本c,这只是你引用变量的方式。有可能(稍后您将了解)同一个变量可以有多个标识符,有点像现实生活中一个人可以有多个名字。

现在不要太担心它,继续尝试并专注于更重要的东西,如循环、条件、类等。

于 2012-07-11T19:15:08.277 回答
4

标识符是变量的名称,变量是数据的存储位置。变量指向读取和修改数据的内存位置

于 2014-01-23T17:17:22.480 回答
3

在 Java 中,标识符是赋予程序元素的名称,其中程序元素可以是包、类型(类、接口、枚举、注释)、字段(实例/静态变量)、枚举常量、注释类型元素、方法、局部变量和参数。本质上,标识符标识程序元素。

例如,在下面的代码中,

package declarations;

public class A {

    private int value = 1;

    private enum SUITS {CLUB, DIAMOND, HEART, SPADE};

    public A(int val) {
        this.value = val;
    }

    public int doSomething() {
        int c = value + 10;
        return c;
    }
}

// declarations, A, value, SUITS, CLUB, DIAMOND, HEART, SPADE,
// A, val, value, val, doSomething, c, value, c are the 
// identifiers in order of their occurrence.
于 2015-11-02T13:29:13.673 回答
2

标识符就像任何用户定义函数的名称,例如

int gcd(int,int);

这里函数 gcd 的名称是一个标识符。

变量用于分配在执行过程中可能会发生变化的值,例如

int a,b;
int a=10;

在上面的两个表达式中,第一个是声明变量,第二个是赋值 10。这里 a 和 b 是变量。

于 2013-10-02T16:55:51.650 回答
1

如果我理解正确,这似乎是过度工程的一个例子(在过度思考变量名称(标识符)的上下文中)

// 变量定义

int myVariable = 42;

从技术上讲

42 是变量(赋值)。

myVariable 是标识符(我们为存储变量而创建的名称)

我通常在将标识符称为变量的通用思想下工作,如果您想获得技术知识,请区分“我们为存储变量而创建的名称是‘变量名’和存储在‘变量名’中的值”是“变量值”。

于 2015-01-10T04:51:58.030 回答
1

我会说变量定义的存储区域;事实上,您的 RAM 中有一个地方可以保存值。变量标识符是您赋予该区域的名称。

当然,标识符可以命名的不仅仅是变量。函数(带有输入/输出参数的代码包)也有一个名称:函数标识符。一个类型(值域),也有一个名字,类型标识符。一个类(具有函数成员的类型),具有类标识符,等等。

例如,“4”是一个值。更重要的是,它是一个整数。如果你想管理自己的整数怎么办?您需要一个存储区域来保存整数,一个名称来引用该存储区域,您需要定义要在该区域中保存的值(类型/域),以及一个名称来引用和指定该类型。所以,你写这样的东西:

int var;

如果 Java 解析器看到一个具有以下结构的句子:name name;,他就知道您正在创建一个存储区域。第一部分指定该区域的值的类型,并且指定它的唯一方法是编写该类型的类型标识符,因为类型本身是一个抽象概念(例如,int对于某事物的抽象概念是整数)。

第二部分是您要为该区域指定的名称,以便以后使用,因为使用名称引用存储区域比使用任何其他方式(例如,内存方向或其他任何方式)更简单;让语言管理它你)。

于 2016-01-01T14:37:41.567 回答
0

标识符是代表变量或函数的词,但变量是内存中存储数据的空间。例如:一旦你声明了一个变量如:int god;这个词god是标识符并且int god;是声明的变量输入一个整数数据。

于 2014-11-29T16:04:43.507 回答
0

添加到上述答案

每个变量都是一个标识符,但每个标识符都不是一个变量。

ex1) 函数名是标识符但不是变量

于 2019-05-03T15:19:52.080 回答
0

简单来说,变量是占用内存空间的东西,标识符是该位置的名称。

于 2016-04-30T03:38:40.390 回答
0

标识符用于识别变量,例如您的名字识别您但您不是您的名字,您只是被它识别。标识符还可用于识别 user267885 的最高评价答案所指出的功能。int 不是标识符,而是声明变量类型的关键字。

于 2021-04-08T10:38:28.210 回答
0

在 C/C++ 中,变量、函数、标签和各种其他用户定义对象的名称称为标识符。第 16 页,C++:完整参考,Herbert Schildt。

于 2018-02-19T11:14:38.277 回答
0

我会尝试这样做,但不举个例子。

程序中的每一条数据都存储在计算机内存中的某个位置,并为其地址命名。用于引用此内存位置的名称称为标识符

如果此位置的数据可以在运行时更改,则此标识符称为变量。如果不是,我们说它是一个常数

于 2019-03-08T17:55:04.570 回答
0

标识符是 Java 中赋予事物的名称。这包括变量、方法、类等。因此,从技术上讲,变量是标识符。见:https ://www.cs.umd.edu/~clin/MoreJava/Intro/var-ident.html

关于您对“我不太确定这意味着什么感到困惑。这就像将变量分配给变量一样吗?什么?” --> 正确的说法是:给变量赋一个“名字”(你想给变量取什么名字)。

于 2017-03-31T13:25:38.737 回答