我有两个类似的函数来获取swift中字符串的子字符串(我只需要一个):
func substring(start: Int, end: Int) -> String {
let c = self.characters
let r = c.index(c.startIndex, offsetBy: start)..<c.index(c.startIndex, offsetBy: end)
let substring = self[r]
return substring
}
和
func substring(start: Int, end: Int) -> String {
let startIndex = self.index(self.startIndex, offsetBy: start)
let endIndex = self.index(self.startIndex, offsetBy: end)
return self[startIndex..<endIndex]
}
我该如何妥善保护?这是我可以在这里得到的主要错误:
致命错误:无法在startIndex之前递减
我需要能够将所有类型的错误值发送到此函数中,例如负start
s和end
s或end
s小于{{1} }}秒。为了学习,我们假设有充分的理由在函数中允许无意义的参数。
我尝试过一些事情,比如:
start
但这些要么不起作用,要么导致我的应用冻结。