iOS: Warum kann ich nil nicht auf den NSDictionary-Wert setzen?

Dies mag eine sehr grundlegende Frage sein, aber ich habe mich gefragt, warum ich nil nicht als NSDictionary-Wert zuweisen kann. Ich habe folgende Aussage an vielen Stellen in meinem Code. Ob[q objectForKey:@"text"] ist gleich null, dann stürzt die App ab.

NSMutableDictionary *dict = [[NSMutableDictionary alloc] initWithCapacity:2];
[dict setObject:[q objectForKey:@"text"] forKey:@"text"];

Ich muss überall nach dem Nullwert suchen, bevor ich ihn dem Wörterbuch zuordnete. Ist das der einzig richtige Weg? Vermisse ich etwas Offensichtliches?

if([q objectForKey:@"text"] != nil)
    [dict setObject:[q objectForKey:@"text"] forKey:@"text"];
else
    [dict setObject:@"" forKey:@"text"];

Antworten auf die Frage(5)

Ihre Antwort auf die Frage