2013-02-05 19 views
5

Ich beginne Objective-C (von Python kommend)
Ich muss ein einfaches Wörterbuch erstellen und initialisieren.
In Python wurde ich tun verwendet:NSArray von NSDictionary - Einfache Initialisierungssyntax

arr = [ 
    {'fieldX': value1, 'fieldY': value2}, 
    {'fieldX': value3, 'fieldY': value3}, 
] 

Hier ist, was in Objective-C

ich tue
NSArray *arr = [NSArray arrayWithObjects: 
    [NSDictionary dictionaryWithObjectsAndKeys: 
     value1, @"fieldX", value2, @"fieldY" 
     , nil] 
    , [NSDictionary dictionaryWithObjectsAndKeys: 
     value3, @"fieldX", value4, @"fieldY" 
     , nil] 
    , nil 
]; 

Gibt es nicht einen einfacheren Weg, um dieses Array von Wörterbüchern zu initialisieren?

Antwort

17

seit iOS6 Sie Literale

NSArray *arr = @[ 
       @{@"fieldX": value1, @"fieldY": value2}, 
       @{@"fieldX": value3, @"fieldY": value3} 
       ]; 

weitere Informationen verwenden können: http://clang.llvm.org/docs/ObjectiveCLiterals.html

+0

Wow, das ist wirklich cool. Vielen Dank ! –

+0

Ich denke, wir können sogar das führende Komma verlassen, oder? –

+0

@Pierredelespinay Ja, Sie können das führende Komma verlassen – peko

Verwandte Themen