모든 검사에도 불구하고이 루프는 빈 배열 메시지에서 인덱스를 벗어나는 인덱스를 제공합니다. 나는 그것이 if 문을 검사하기 위해 if 문을 설정했기 때문에 색인이 범위를 벗어나지 않았 음을 알고 있지만 여전히 충돌합니다. 또한 코드를 편집하여 명시 적 인덱스 (예 : array [0] ...)가 발생해도 응용 프로그램이 충돌하지 않고 배열이 비어있는 경우 의미가 없습니다. 어떤 아이디어가 이것을 일으킬 수 있습니까?ios : 비어있는 배열의 인덱스가 범위를 벗어남
while을 사용하여 왜 배열을 반복하지 않는지에 관해서는 for가 동일한 문제를 일으켰으므로 색인을 직접 명시 적으로 수행하려고했지만 여전히 응용 프로그램이 충돌합니다.
while(index < self.representatives.count - 1){
if(self.representatives.count > 0){
self.api.getPoliticianContactInfo(self.representatives[8].candidateId!, completion: { (result, id) in
print(result[0].value
print(id)
print("The index is: \(index)")
self.representatives[index].contactInfo = result
self.api.getPoliticianPhoto(id, completion: { (image) in
self.representatives[index].photo = image
print(self.representatives[index].photo)
})
}
index+=1
}
질문을 수정하여 실제 질문에 * 코드를 포함 시키십시오. * – Paulw11
어레이에 충돌이 발생하지 않도록 'self.representives [8]'에 8 개 이상의 요소가 있습니까? –
9 개의 요소가 있으므로 8을 넣어도 충돌이 발생하지 않습니다. –