2012-05-21 2 views

답변

13

NSArraynil 값을 포함하지 않으며; objectAtIndex:은 결코 nil을 반환하지 않습니다. 컬렉션에 nil을 추가하는 것은 오류입니다.

작업을 수행하려면 [NSNull null]과 같은 자리 표시 자 개체를 사용하고 배열의 count을 쿼리 할 수 ​​있습니다. 물론 돌연변이 (예 : 대체 또는 삽입)를 수행하려면 NSMutableArray이 필요합니다.

OSX에서는 NSPointerArray을 사용하여 nil 요소가 포함 된 모음을 나타낼 수 있습니다. NSNull를 사용


예 :

const NSUInteger idx = ...; 
NSMutableArray * array = ...; 

if ([NSNull null] == [array objectAtIndex:idx]) { 
    [array replaceObjectAtIndex:idx withObject:someObject]; 
} 
+0

이 유 그냥이 작업을 수행하는 방법에 대한 샘플 코드를 게시 할 수 있습니까? 이 모양이 이렇게 생겼습니까? }} else {[arr insertObject : anObject atIndex : i];} NSlog (@ "개체가 있습니다")} } –

+0

@PradeepReddyKypa done – justin

+0

고마워요 ...이게 작동하는지 알려 드리겠습니다. –

관련 문제