Ricerca…


Sottoscrizioni con NSArray

Gli abbonati possono essere utilizzati per semplificare il recupero e l'impostazione di elementi in un array. Dato il seguente array

NSArray *fruit = @[@"Apples", @"Bananas", @"Cherries"];

Questa linea

[fruit objectAtIndex: 1];

Può essere sostituito da

fruit[1];

Possono anche essere usati per impostare un elemento in un array mutabile.

NSMutableArray *fruit = [@[@"Apples", @"Bananas", @"Cherries"] mutableCopy];
fruit[1] = @"Blueberries";
NSLog(@"%@", fruit[1]); //Blueberries

Se l'indice del pedice è uguale al conteggio dell'array, l'elemento verrà aggiunto all'array.

Gli indici ripetuti possono essere utilizzati per accedere agli elementi degli array annidati.

NSArray *fruit = @[@"Apples", @"Bananas", @"Cherries"];
NSArray *vegetables = @[@"Avocado", @"Beans", @"Carrots"];
NSArray *produce = @[fruit, vegetables];
    
NSLog(@"%@", produce[0][1]); //Bananas

Sottoscrizioni con NSDictionary

Gli abbonati possono anche essere utilizzati con NSDictionary e NSMutableDictionary. Il seguente codice:

NSMutableDictionary *myDictionary = [@{@"Foo": @"Bar"} mutableCopy];
[myDictionary setObject:@"Baz" forKey:@"Foo"];
NSLog(@"%@", [myDictionary objectForKey:@"Foo"]); // Baz

Può essere abbreviato in:

NSMutableDictionary *myDictionary = [@{@"Foo": @"Bar"} mutableCopy];
myDictionary[@"Foo"] = @"Baz";
NSLog(@"%@", myDictionary[@"Foo"]); // Baz

Sottoscrizione personalizzata

È possibile aggiungere sottoscrizioni alle proprie classi implementando i metodi richiesti.

Per gli indici indicizzati (come gli array):

- (id)objectAtIndexedSubscript:(NSUInteger)idx
- (void)setObject:(id)obj atIndexedSubscript:(NSUInteger)idx

Per gli abbonamenti con chiave (come i dizionari):

- (id)objectForKeyedSubscript:(id)key
- (void)setObject:(id)obj forKeyedSubscript:(id <NSCopying>)key


Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow