差异“和”在Lua
我只是有一个普遍的问题差异“和”在Lua
有没有用在Lua单引号和双引号任何区别
例:?
require('test.lua')
require("test.lua")
当我编程在PAWN中,一种类似于C的语言,单引号可以用于字符,但不是文本字符串,您必须使用双引号。
如果没有差异,建议使用哪一个?
这个问题最有可能已经回答了,但是我没有找到已经回答的话题。
谢谢。
没有。没有什么区别,除了你可以把另一个放在你正在使用的那个之内。
-- No difference between these
myStr = "Hi!!"
myStr = 'Hi!!'
myStr = [[Hi!!]] -- The 'weird' way to make a string literal IMO...
-- Double quotes enclosed in single quotes
myStr = 'My friend said: "Hi!!"'
-- Single quotes enclosed in double quotes
myStr = "My friend said: 'Hi!!'"
-- Single and double quotes enclosed in double brackets
myStr = [[My friend said: "What's up?"]]
参见:Strings in Lua了解更多信息。
好的,再次感谢您的回答,非常感谢。不过,我仍然想知道哪一个更常见:)我猜测双引号是因为各种语言的字符串都使用双引号。 – Bicentric
是的,在C,C++,C#,Java和更多语言中,双引号用于字符串文字,单引号用于字符文字。 – AtinSkrita
@Bicentric你对它的想法太多了。只要使用一个适合你的想法 - 没有比其他人更喜欢的。我倾向于使用''',因为我输入时不需要额外的换档键。 – greatwolf
通过在互联网上搜索“lua字符串”,您可以轻松找到关于Lua字符串的足够信息。
这里是一个结果:http://www.lua.org/pil/2.4.html
你可以*选择自己的报价风格,因为它没有什么区别,但你应该是一致的,这样你的代码是更好的阅读。
作为一个偏好问题,我通常会使用双引号,因为Lua使用C风格的转义码。许多脚本语言(例如Perl)和命令shell do在单引号和双引号字符串之间作了区分,并且与这些准标准实践略微一致会很好。
我的意思是,当我看到一个单引号的字符串时,我必须真正思考我在读什么语言,以及是否在该字符串中替换了转义码。使用双引号字符串我不必考虑它,因为作为一般规则,在字符串中替换C风格转义码的任何语言都会在双引号字符串中执行此操作。
Lua中两者没有区别,所以你可以使用你喜欢的任何一个。我倾向于语义来区分它们:
- 我用
"double quotes"
对用户可见的字符串和文本,基本上无论在输出或文件 - 我用
'single quotes'
对于期权类的字符串传递到方法,并出现一般在代码中,如io.stdout:setvbuf('no')
没有区别。另外,如果你决定使用''''或'''作为数组变量,你可以使用点符号。 –
啊好吧谢谢你的快速反应,哪一个更受欢迎? – Bicentric
只需使用单引号当你在字符串中加双引号时,在字符串中加双引号时用单引号,也可以用反斜线字符在两者中进行转义,所以选择哪一个并不重要。优先考虑,因为它确实没有关系。 –