subscript (r: Range<Int>) -> String {
let start = startIndex.advancedBy(r.startIndex)
let end = start.advancedBy(r.endIndex - r.startIndex)
return self[Range(start: start, end: end)]
}
Run Code Online (Sandbox Code Playgroud)
苦苦挣扎将我的String扩展中的上面的下标转换为swift 3.下面是我在Xcode上按下转换按钮后发生的事情.
subscript (r: Range<Int>) -> String {
let start = characters.index(startIndex, offsetBy: r.lowerBound)
let end = <#T##String.CharacterView corresponding to `start`##String.CharacterView#>.index(start, offsetBy: r.upperBound - r.lowerBound)
return self[(start ..< end)]
}
Run Code Online (Sandbox Code Playgroud)
错误的屏幕截图