我正在查看我的笔记,当评估得到5时,它有整数5作为表达式。
我的笔记中表达的定义:
表达式是java代码,在评估时产生值
但是我看到了文字的定义:
Literal是固定值的源代码表示;文字直接在代码中表示,无需计算
那么整数5也不会被归类为文字吗? 这里有什么问题,或者表达式也可能是文字吗?
答案 0 :(得分:3)
int i;
i = 5
是一个表达式,5
的{{1}}值为i
,而5
是一个字面值,因此会导致整数5
。
答案 1 :(得分:3)
5是契约的文字,文字是表达的特例。
来自Java Specification Section 15.2:
表达式可大致分为以下之一 句法形式:
[...] Primary expressions (§15.8 - §15.13) [...]
在Section 15.8中:文字被列为主要表达形式的一种形式。
答案 2 :(得分:1)
int literal是一个表达式。更普遍的是文字是一种表达。
要确信您可以一瞥解析语言的jdk源代码(在langtools中):
package com.sun.source.tree;
public interface LiteralTree extends ExpressionTree {...