简单的问题 - 希望我正在尝试生成一个简单的字符数组,类似于:
// trying to do something like this (pseudo code):
let letters:[Character] = map(0..<26) { i in 'a' + i }
并尝试了以下方法但无济于事
let a = Character("a")
let z = Character("z")
let r:Range<Character> = a..<z
let letters:[Character] = map(a..<z) { i in i }
我意识到 Swift 使用 Unicode,做这样的事情的正确方法是什么?
(注意,这不是关于与遗留 Obj-C 字符互操作的问题,严格在 Swift 中进行测试等)。
获取初始字符代码(即'a'
在 Swift 中的 c / Obj-C 中),但你可以这样做:
let aScalars = "a".unicodeScalars
let aCode = aScalars[aScalars.startIndex].value
let letters: [Character] = (0..<26).map {
i in Character(UnicodeScalar(aCode + i))
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)