我需要将 Int8
转换为 Character
。我该怎么做?
我尝试使用 UnicodeScalar
var result += Character(UnicodeScalar(data[i]))
...但是出现了这个错误:
Cannot invoke initializer for type 'UnicodeScalar' with an argument list of type (Int8)
最佳答案
Unicode.Scalar
可以用某些类型的参数初始化,您可以在 docs 中找到这些参数.
我建议您使用 init(_:)
它采用 UInt8
告诉给定数字是正数(这是创建 UnicodeScalar
所必需的)。因此,您可以尝试将 Int8
转换为 UInt8
,然后您的初始化程序采用正确类型的参数
let int: Int8 = data[i]
if let uint = UInt8(exactly: int) {
let char = Character(UnicodeScalar(uint))
}
关于swift - 如何将 Int8 转换为字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55383682/