【发布时间】:2016-09-30 05:52:25
【问题描述】:
我有一个带有 is 前缀的字符串。我正在迭代一个字符串数组,如果该值包含前缀,那么我想从Array 中删除该项目。我的代码给了我错误:
致命错误:索引超出范围。
我需要一些关于如何处理此类事情的指导。
for (index, value) in arrayValues.enumerated() {
if value.contains(prefixValue) {
arrayValues.remove(at: index)
}
}
【问题讨论】:
-
你的arrayValues是如何定义的?
-
var arrayValues = JSON["array"] as? [String] ,我正在下载这个表单一个 API
-
而
print(arrayValues)输出是? -
[“rehjileo”、“rehjhzse”、“rehjlsid”、“uvhydtkc”、“rehjxeyl”、“dyxejbrq”、“rehjknwz”、“rehjrewz”、“rehjqlam”、“ynabgzuq”、“ rehjpfbv”、“pvuaokhl”、“rehjzhlv”、“rehjwxhj”、“chfmptev”、“ixgabfwj”、“mvhnkusg”、“lvfcipnt”、“rehjlhrn”、“rehjiosy”]
-
var filterArray = arrayValues.filter { !$0.lowercased().contains(prefixValue) } 适用于此解决方案。