在Swift中将ClosedInterval <String>转换为[String]

马可·阿尔维斯

为什么会这样:

let i = 1...100
let s = [Int](i)

产量

[1, 2, 3, ..., 100]

let i = "a"..."z"
let s = [String](i)

产量

Cannot invoke initializer for type '[String]' with an argument list of type '(ClosedInterval<String>)'

然而

i.contains("b")

产量

true
马丁·R

Int符合ForwardIndexType,因此

let i = 1...100

... 是运算符

public func ...<Pos : ForwardIndexType where Pos : Comparable>(start: Pos, end: Pos) -> Range<Pos>

结果是Range<Int>范围是集合和序列:可以枚举范围的元素并从中创建数组。

但是String并且Character不符合ForwardIndexType:没有方法可以从一个字符串或字符前进到下一个字符串或字符。因此在

let i = "a"..."z"

... 是运算符

public func ...<Bound : Comparable>(start: Bound, end: Bound) -> ClosedInterval<Bound>

结果是ClosedInterval<String>您可以检查该间隔中是否包含特定的字符串,但是不能枚举其元素。

"a"..."z"代表所有字符串s为其"a" <= s <= "z"根据Unicode标准,并从英文字母不只是26个个小写字母,比较例如是什么意思斯威夫特该字符串和字符比较不区分语言环境?例如

let c = i.contains("ä")

产量true

在Swift 3中,范围和间隔类型已重命名并重新组织:

"1" ... "100"  // CountableClosedRange<Int>
"a" ... "z"    // ClosedRange<String>

如果您打算根据Unicode表中从“ a”到“ z”的所有字符创建一个数组,则可以枚举UTF-32代码单元:

let i = UnicodeScalar("a").value ... UnicodeScalar("z").value
let charArray = (i.map { Character(UnicodeScalar($0)) })
// or
let stringArray = (i.map { String(UnicodeScalar($0)) })

结果是

["a", "b", "c", ... , "z"]

作为的数组Character或的数组String

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类常见问题

在Swift中将String转换为Float

来自分类Dev

在Android中将String转换为Arraylist <string>

来自分类Dev

在Scala中将Map [String,String]转换为Map [String,Int]

来自分类Dev

在Swift中将float值转换为String

来自分类Dev

如何在Swift中将String类型的变量转换为CFString?

来自分类Dev

Swift String转换为CChar

来自分类Dev

在Swift中将Int转换为String

来自分类Dev

在f#中将string [] [] []转换为string [] []

来自分类Dev

如何在Swift中将String转换为字节?

来自分类Dev

在Swift中将String数组转换为CGFloat数组

来自分类Dev

在Swift中将String转换为NSDate

来自分类Dev

如何在Swift中将NSHTTPURLResponse转换为String

来自分类Dev

如何在Swift中将NSURL转换为String

来自分类Dev

在Swift中将[NSObject,AnyObject]转换为[String,AnyObject]

来自分类Dev

在Swift中将ClosedInterval <String>转换为[String]

来自分类Dev

在Groovy中将String转换为arrayList

来自分类Dev

如何在Swift中将String转换为NSUUID?

来自分类Dev

在Scala中将Map [String,String]转换为Map [String,Int]

来自分类Dev

在Swift中将float值转换为String

来自分类Dev

在Swift中将String转换为[Character]的最佳方法是什么?

来自分类Dev

如何在Swift中将String类型的变量转换为CFString?

来自分类Dev

在Swift中将String转换为NSDate

来自分类Dev

(SWIFT)(String,Any)不能转换为String

来自分类Dev

在Swift中将String转换为JSON String

来自分类Dev

在Swift中将String转换为Double尊重NSLocale

来自分类Dev

无法在Java中将String转换为String []

来自分类Dev

如何在Swift中将String转换为float数组

来自分类Dev

如何在 Swift 中将 String 转换为 Int?

来自分类Dev

在 Swift 中将通用数据类型的变量转换为 String

Related 相关文章

热门标签

归档