Ihr für zwei Probleme:
- Wenn
slashList.count
0 (weil slashList
leer ist), es würde versuchen, von 1 bis 0 zu zählen, indem man 1 addiert (was zu einer Endlosschleife führt), deshalb gibt der Compiler Ihnen den Fehler start > end
.
- wenn
slashList.count
größer als 0 (slashList
nicht leer ist), wäre es einen Index verwenden, die außerhalb der Grenzen ist, weil Sie 1-slashList.count
zählen, während die Indizes 0-slashList.count - 1
gehen
zu überprüfen sie alle Indizes sollte es sein:
for i in 0 ..< slashList.count {
// your code
}
das erste Element zu ignorieren (Index 0) tun:
for i in 1 ..< slashList.count {
// your code
}
für Ihren speziellen Fall, so scheint es mir besser etwas wie zu tun:
for element in slashList {
if !quotaList.contains(element+1)
{
slashList.removeObject(element)
}
}
können Sie removeObject von this answer verwenden. Wenn aus irgendeinem Grund, auch Sie den Index benötigen, tun:
for (index, element) in slashList.enumerate() {
// your code
}
einfach nicht Ihre slashList machen <1 –