阅读文档和这个答案,我发现可以通过以下两种方式初始化Unicode字符:
let narrowNonBreakingSpace: Character = "\u{202f}"
let narrowNonBreakingSpace = "\u{202f}"
据我了解,第二种实际上是一个字符串。与Java不同的是,它们都使用双引号(而不是单引号表示字符)。我看过几个例子,即使变量只包含一个字符,也使用了第二种形式(没有使用
Character
)。这是因为人们懒惰或忘记写Character
吗?还是Swift会处理所有细节,我不需要担心?如果我知道一个常量只包含一个Unicode值,我应该总是使用Character
吗?
Character
来指定它,而不是让编译器推断,对吗?这两种形式之间是否存在性能差异? - Suragch