Java文本真的是常量吗?
我看到/听到人们谈论文字是常量,但它们真的是常量吗 我认为final是一个常数:Java文本真的是常量吗?,java,Java,我看到/听到人们谈论文字是常量,但它们真的是常量吗 我认为final是一个常数: final constantNumber = 10; 例如,在下面的文字中,我可以更改值 int testNumber = 10; System.out.println(testNumber); testNumber = 20; System.out.println(testNumber); 在你的例子中 int testNumber = 10; 10是文本,而不是testNumber。是的,它是一个常量。
final constantNumber = 10;
例如,在下面的文字中,我可以更改值
int testNumber = 10;
System.out.println(testNumber);
testNumber = 20;
System.out.println(testNumber);
在你的例子中
int testNumber = 10;
10
是文本,而不是testNumber
。是的,它是一个常量。是的,这些文字是常量
literal是一种表示源代码中固定值的符号。与文字不同的是,变量或常量是符号,可以采用一类固定值中的一个,常量被限制为不改变。文本通常用于初始化变量 例如,在下面的示例中,1是一个文本,
“cat”
中的三个字母字符串是一个文本:
int a = 1;
String s = "cat";
这里,
1
是文本,其中asa
是变量。文本“SomeString”
不能更改。从这个意义上说,它是一个常量。在您的示例中,为什么不使用final constantNumber=10代码>?看起来像一个斯特劳曼参数或一个非sequiturt在这种情况下,文本数将同时为10和20。您只是在更改变量的值。如果文本不是常量,您可以为10
指定不同的值。值“10”不能更改,它是“10”。您已更改变量的值。感谢您的回复。当然,10仍然是10,如果我把变量值改为20,变量之前持有的数字10仍然是10,10仍然是10,但是说明这一点有什么意义呢?我觉得我的理解中一定遗漏了一些至关重要的东西。这就是它的全部内容吗?@Xerphiel你可能听说过或读过有人提到文字在Java中是常量,因为这在每种编程语言中并不总是如此。根据这个定义,“文字”不是“常量”,因为常量是“可以接受一类固定值的符号”,而文字是一个符号“固定价值”。