2012-07-24 3 views
2

그래서 사용할 메서드 데이터를 제공하는 NSDictionary를 만들고 있는데 키 배열의 키 값 중 일부는 항상 값으로 채워지지 않을 것입니다. do). 나는 하나의 호출 중에는 5를 사용할 수 있지만, 다른 코드에서는 6을 사용할 수도 있고, 코드 내 일부 지점에서 6을 사용할 수도 있습니다.NSDictionary NULL 키 값 추가

내가 알고 싶은 것은 나중에 키 값에 NULL 값을 추가 할 수 있다는 것입니다. 나중에 키 값 쌍을 살펴볼 때 걱정할 필요가있는 키와 잊어 버릴 수있는 키를 볼 수 있습니까? 그래서 질문에, 만약 내가 열쇠를 null로 추가하고 싶다면 오류를 일으키지 않고 배열의 끝을 생각하지 않고 어떻게해야합니까?

이것은 제가 현재 가지고있는 것입니다. NSDicionary를 읽 자마자 잘못된 exe 오류가 발생했습니다.

NSDictionary * sendSeriesDictionary = [[NSDictionary alloc] init];

NSArray *keys = [NSArray arrayWithObjects:@"Code", @"MaID", @"MoID", @"SuID",@"SMID",@"Ye",@"KID",@"KBlID",@"KBk",@"CaID",@"Caer",@"Loe",@"Kepe",@"KTGroup",@"Cesc",@"LID",@"IN",@"LaID", nil]; 


NSArray *objects = [NSArray arrayWithObjects: NULL, manufactureIdString, modelIdString, subModelIdString, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, nil]; 

sendSeriesDictionary = [NSDictionary dictionaryWithObjects:objects forKeys:keys]; 

키 이름이 변경 될 것임을 알려 드리기 위해 테스트/예를 들어 설명합니다.

모든 도움을 주시면 대단히 감사하겠습니다.

+0

[가능한 objC에 nil 포인터의 배열을 저장하는 방법?] (http://stackoverflow.com/questions/11591504/how-to-store-an-array-of-nil-pointers-in- objc) – dasblinkenlight

답변

10

NSNull 클래스는이를 위해 설계되었습니다. NSNull 값에 대한 콜렉션 검사를 사용하려고하는 것이 무엇이든간에 반드시 확인해야합니다.

NSArray *objects = [NSArray arrayWithObjects: [NSNull null], manufactureIdString, modelIdString, subModelIdString, [NSNull null], ..., nil]; 
+0

완벽한 NSNull을 확인하는 방법을 읽어 주셔서 대단히 감사합니다. – HurkNburkS

+0

@HurkNburkS 도움을받을 수있어서 다행입니다. – Joe