如何在Swift中将“索引”转换为“ Int”类型?

如何在Swift中将“索引”转换为“ Int”类型?,第1张

如何在Swift中将索引”转换为“ Int”类型?

编辑/更新:

Xpre 11•Swift 5.1或更高版本

extension StringProtocol {    func distance(of element: Element) -> Int? { firstIndex(of: element)?.distance(in: self) }    func distance<S: StringProtocol>(of string: S) -> Int? { range(of: string)?.lowerBound.distance(in: self) }}

extension Collection {    func distance(to index: Index) -> Int { distance(from: startIndex, to: index) }}

extension String.Index {    func distance<S: StringProtocol>(in string: S) -> Int { string.distance(to: self) }}

游乐场测试

let letters = "abcdefg"let char: Character = "c"if let distance = letters.distance(of: char) {    print("character (char) was found at position #(distance)")   // "character c was found at position #2n"} else {    print("character (char) was not found")}

let string = "cde"if let distance = letters.distance(of: string) {    print("string (string) was found at position #(distance)")   // "string cde was found at position #2n"} else {    print("string (string) was not found")}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5642228.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存