lag*_*oon 17 swift swift3 ios10 xcode8
我试图在Swift 3中创建一个我在Swift 2中已有的范围,但它一直给我这个错误:
String may not be indexed with 'Int', it has variable size elements
这是我的代码:
let range = expireRange!.startIndex.advancedBy(n: 7) ..< expireRange!.startIndex.advancedBy(n: 16)
Run Code Online (Sandbox Code Playgroud)
expiredRange是一个 Range<Index>?
在Swift 2中,我有:
let range = expireRange!.startIndex.advancedBy(7)...expireRange!.startIndex.advancedBy(16)
Run Code Online (Sandbox Code Playgroud)
Mar*_*n R 40
在Swift 3中,"集合移动他们的索引",参见 Swift进化的集合和指数的新模型.
以下是String范围和索引的示例:
let string = "ABCDEFG"
if let range = string.range(of: "CDEF") {
let lo = string.index(range.lowerBound, offsetBy: 1)
let hi = string.index(range.lowerBound, offsetBy: 3)
let subRange = lo ..< hi
print(string[subRange]) // "DE"
}
Run Code Online (Sandbox Code Playgroud)
该
public func index(_ i: Index, offsetBy n: IndexDistance) -> Index
Run Code Online (Sandbox Code Playgroud)
在字符串上调用方法来计算范围内的新索引(lower/upperBound现在具有属性而不是
start/endIndex).
| 归档时间: |
|
| 查看次数: |
16826 次 |
| 最近记录: |