我有这个
String
类别:
extension String {
subscript (i: Int) -> String {
return self[Range(i ..< i + 1)]
}
subscript (r: Range<Int>) -> String {
let range = Range(uncheckedBounds: (lower: max(0, min(count, r.lowerBound)),
upper: min(count, max(0, r.upperBound))))
let start = index(startIndex, offsetBy: range.lowerBound)
let end = index(start, offsetBy: range.upperBound - range.lowerBound)
return String(self[start ..< end])
}
}
Xcode在这行给我一个警告:
return self[Range(i ..< i + 1)]
“init”已弃用:CountableRange现在是Range。不需要再转换了。
很遗憾,尽管我对斯威夫特很有经验,但我不知道如何解决这个问题。问题是:如何摆脱这个警告。
谢谢您!