Java中的数字文字

时间:2014-09-05 02:47:06

标签: java literals

何时赋值不是整数字面值。我理解int a = 5;是,但int a = b + c;也是整数文字。谢谢你的帮助。

1 个答案:

答案 0 :(得分:5)

  

何时赋值不是整数字面值。

作业永远不是文字。

  

我了解int a = 5;

实际上,事实并非如此。文字是5

整个批次是声明=右侧的内容是表达式(在这种情况下只是文字)

(从技术上讲,int a = 5;不是作业......虽然它肯定包含初始化形式的“作业”。)

  

int a = b + c;也是整数文字。

不,不是。

再一次,这是一个声明,=右边的东西是一个表达式。但在这种情况下,表达式不是文字,甚至不涉及文字。

文字是一个表示单个确定值的句法元素。以下是一些例子:

  • 5 - 整数文字
  • 5.0 - 双字面
  • 'X' - 字符文字
  • "Hi mum" - 字符串文字
  • false - 布尔文字
  • String.class - 一个类文字

相比之下,bc是变量的名称,可以包含不同的值...在程序执行的不同点。变量名不是文字。