一个字符串和字面值的区别是什么?

4
"I like Comp Sci!"的类型是什么?我相信它要么是字符串,要么是字面量,有人能指出两者之间的区别并帮助我找到答案吗?

试一下这个链接:https://dev59.com/bXA75IYBdhLWcg3wbojM - mal-wan
6
两个术语并不是互相排斥的(也就是说,“字符串文字”可以成立)。最好检查一下你的教科书。 - larsks
@mwan:那个问题非常特定于JavaScript。 - Gabe
@Gabe - 实际上这非常特定于Java,但是我明白你的意思 - 这个问题缺乏上下文。 - mal-wan
@mwan:哎呀,你说得对;这是Java。问题的背景只是通用的计算机科学术语。 - Gabe
3个回答

5

字符串是字符的序列。文字量是作为程序的一部分键入的数据。如果你在程序中输入了"I like Comp Sci",那么它就是一个字符串文字量。


1
在大多数编程语言中,它既可以被视为字符串又可以被视为字面量。字符串是由一系列字符组成的文本段落。字面量是无条件的常量,直接输入到您的源代码中。它们并不互斥。

我不同意。这不是特定于语言的概念。字面值由实际字符串表示,但字符串只是一种数据类型,可以用引用名称表示。但是,程序员肯定会同时使用术语“字符串”,但您永远不会说String myString; 是一个字符串字面值。 - Daniel Pereira

0
字符串是一种数据类型,但字符串字面量是指在引号中“逐字地”定义字符串:
String myString = "This is a literal string";

在这个例子中,String是类型,myString是变量或引用名称,而引号中的文本则是字面字符串。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接