Flutter/Dart 中单引号和双引号的区别

2023-12-26

我知道单引号和双引号在 Dart 中至少具有一定程度的等效性。例如,

var myString = "Hello world";      // double quotes

and

var myString = 'Hello world';      // single quotes

据我所知,没有程序上的差异。

我不断看到它们在各种示例和一些文档中似乎可以互换使用。我想知道是否存在我遗漏的细微差别,或者是否有可遵循的推荐风格,尤其是在 Flutter 中。

这是阅读 Flutter 和 Dart 风格指南后的问答自我回答。


单引号和双引号在 Dart 中都适用

final myString = 'hello';

是相同的

final myString = "hello";

分隔符需要转义

Use a \反斜杠用于转义单引号字符串中的单引号。

final myString = 'Bob\'s dog';            // Bob's dog

在双引号字符串中转义双引号也是如此。

final myString = "a \"quoted\" word";     // a "quoted" word

但如果分隔符不同,则无需转义任何内容。

final myString = "Bob's dog";             // Bob's dog
final myString = 'a "quoted" word';       // a "quoted" word

也无需担心传递到内插字符串中的值。

final value = '"quoted"';                 // "quoted"
final myString = "a $value word";         // a "quoted" word

在 Flutter 中更喜欢单引号

The 颤振风格指南 https://github.com/flutter/flutter/wiki/Style-guide-for-Flutter-repo#prefer-single-quotes-for-strings建议所有内容都使用单引号

final myString = 'hello';

除了嵌套字符串

print('Hello ${name.split(" ")[0]}');

或包含单引号的字符串(可选)

final myString = "Bob's dog";
final myString = 'Bob\'s dog';  // ok

The Dart 风格指南 https://www.dartlang.org/guides/language/effective-dart/usage#strings似乎对这个问题保持沉默。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Flutter/Dart 中单引号和双引号的区别 的相关文章

随机推荐