字符串的 Unicode 表示Swift 提供了几种不同的方式来访问字符串的 Unicode 表示。UTF-8 代码单元集合 (利用字符串的 utf8 属性进行访问)let dogString = "Dog!��" for codeUnit in dogString.utf8 {print("\(codeUnit) ")}print("\n")// 68 111 103 33 240 159 144 182 上面的例子中,前四个10进制代码单元值 (68, 111, 103, 33) 代表了字符 D o g 和 ! ,他们的 UTF-8 表示与 ASCII 表示相同。后四个代码单元值 (240, 159, 144, 182) 是 狗脸表情 的4位 UTF-8 表示。UTF-16 代码单元集合 (利用字符串的 utf16 属性进行访问)for codeUnit in dogString.utf16 {print("\(codeUnit) ")}print("\n")// 68 111 103 33 55357 56374 21位的 Unicode 标量值集合 (利用字符串的 unicodeScalars 属性进行访问) 每一个 UnicodeScalar 拥有一个值属性,可以返回对应的21位数值,用 UInt32 来表示。for scalar in dogString.unicodeScalars {print("\(scalar.value) ")}print("\n")// 68 111 103 33 128054