Objective-C Language
индексация
Поиск…
Подстрочные индексы с NSArray
Подстроки могут использоваться для упрощения поиска и установки элементов в массиве. Учитывая следующий массив
NSArray *fruit = @[@"Apples", @"Bananas", @"Cherries"];
Эта строка
[fruit objectAtIndex: 1];
Может быть заменено на
fruit[1];
Они также могут использоваться для установки элемента в изменяемом массиве.
NSMutableArray *fruit = [@[@"Apples", @"Bananas", @"Cherries"] mutableCopy];
fruit[1] = @"Blueberries";
NSLog(@"%@", fruit[1]); //Blueberries
Если индекс индекса равен счету массива, элемент будет добавлен к массиву.
Повторные индексы могут использоваться для доступа к элементам вложенных массивов.
NSArray *fruit = @[@"Apples", @"Bananas", @"Cherries"];
NSArray *vegetables = @[@"Avocado", @"Beans", @"Carrots"];
NSArray *produce = @[fruit, vegetables];
NSLog(@"%@", produce[0][1]); //Bananas
Подписчики с NSDictionary
Подписчики также могут использоваться с NSDictionary и NSMutableDictionary. Следующий код:
NSMutableDictionary *myDictionary = [@{@"Foo": @"Bar"} mutableCopy];
[myDictionary setObject:@"Baz" forKey:@"Foo"];
NSLog(@"%@", [myDictionary objectForKey:@"Foo"]); // Baz
Может быть сокращено до:
NSMutableDictionary *myDictionary = [@{@"Foo": @"Bar"} mutableCopy];
myDictionary[@"Foo"] = @"Baz";
NSLog(@"%@", myDictionary[@"Foo"]); // Baz
Пользовательские подписки
Вы можете добавить подписки на свои классы, выполнив необходимые методы.
Для индексированных подписчиков (например, массивов):
- (id)objectAtIndexedSubscript:(NSUInteger)idx
- (void)setObject:(id)obj atIndexedSubscript:(NSUInteger)idx
Для подписи под ключ (например, словари):
- (id)objectForKeyedSubscript:(id)key
- (void)setObject:(id)obj forKeyedSubscript:(id <NSCopying>)key
Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow