SlideShare a Scribd company logo
iOS Internship 2014
NSArray+NSMutableArray
Максим Забелин
Foundation
NSArray+NSMutableArray
Упорядоченный набор объектов.
Нумерация начинается с 0, объекты могут быть
любого класса.
NSArray - это ...
Foundation
NSArray+NSMutableArray
● Дополнить имеющийся массив
● Получить подмассив из имеющегося
массива
● Сортировать имеющийся массив
Как создать новый массив на основе имеющегося?
Foundation
NSArray+NSMutableArray
- (NSArray *)arrayByAddingObject:(id)anObject;
- (NSArray *)arrayByAddingObjectsFromArray:(NSArray *)otherArray;
Дополнение
Foundation
NSArray+NSMutableArray
- (NSArray *)subarrayWithRange:(NSRange)range;
- (NSArray *)filteredArrayUsingPredicate:(NSPredicate *)predicate;
Взятие подмассива
Foundation
NSArray+NSMutableArray
- (NSArray *)sortedArrayUsingComparator:(NSComparator)cmptr;
- (NSArray *)sortedArrayWithOptions:(NSSortOptions)opts
usingComparator:(NSComparator)cmptr;
enum {
NSSortConcurrent = (1UL << 0),
NSSortStable = (1UL << 4),
};
typedef NSUInteger NSSortOptions;
typedef NSComparisonResult
(^NSComparator)(id obj1, id obj2);
typedef NS_ENUM(NSInteger,
NSComparisonResult) {
NSOrderedAscending = -1L,
NSOrderedSame,
NSOrderedDescending
};
Сортировка
Foundation
NSArray+NSMutableArray
- (NSUInteger)indexOfObject:(id)anObject;
- (NSUInteger)indexOfObjectIdenticalTo:(id)anObject;
Порядковый номер объекта внутри массива
Foundation
NSArray+NSMutableArray
-(NSIndexSet*)indexesOfObjectsWithOptions:(NSEnumerationOptions)opts
passingTest:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))predicate;
+ еще несколько методов
Индексы элементов массива, удовлетворяющих
заданым условиям
Foundation
NSArray+NSMutableArray
- (id)initWithContentsOfFile:(NSString *)path;
- (id)initWithContentsOfURL:(NSURL *)url;
- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile;
- (BOOL)writeToURL:(NSURL *)url atomically:(BOOL)atomically;
Чтение массива с “диска” и запись массива на “диск”
Foundation
NSArray+NSMutableArray
- (id)firstObject;
- (id)lastObject;
… и еще пара полезных методов
Foundation
NSArray+NSMutableArray
- (void)addObject:(id)anObject;
- (void)insertObject:(id)anObject atIndex:(NSUInteger)index;
- (void)removeLastObject;
- (void)removeObjectAtIndex:(NSUInteger)index;
- (void)replaceObjectAtIndex:(NSUInteger)index withObject:(id)anObject;
NSMutableArray
Foundation
NSArray+NSMutableArray
1. Прочитать документацию к NSArray,
2. Прочитать документацию к NSMutableArray.
Задание для самостоятельного изучения

More Related Content

PDF
06 ns set
PDF
ОПК № 5 – Составные типы данных, списки
PPTX
Мастер класс по алгоритмам. Часть 1
PPTX
Дмитрий Рыжков. Intel Android x86.
PDF
писаревский алексей
PPT
Brew Compilation
PPTX
Android for-indoor-services
PDF
Государственный реестр регистраторов расчетных операций (РРО) от 02.08.2013
06 ns set
ОПК № 5 – Составные типы данных, списки
Мастер класс по алгоритмам. Часть 1
Дмитрий Рыжков. Intel Android x86.
писаревский алексей
Brew Compilation
Android for-indoor-services
Государственный реестр регистраторов расчетных операций (РРО) от 02.08.2013

Viewers also liked (17)

PPTX
Hackathon final
PPTX
Живые обои для Android. Как создать. Тонкости. Продвижение
PPTX
Use-Case is Everything
PPTX
Android Location Api
PDF
Android - 14 - Geodata
PPTX
Play Store
PDF
CPAлим темы
PDF
Презентация - SAMSUNG GT N5100 GALAXY NOTE 8.0 (uaseller.org)
DOCX
Sensor android
PPTX
Android Sensor and Framework - AWARE
PPTX
Android Preferences
PPTX
Win Phone 2 - Statistika
PDF
How to Pick a Technology Vendor: Top 6 Questions to Ask
PPTX
Win Phone 2 - Qaliblər
PPTX
Android Database
PPSX
Sensor's inside
PPTX
Hackathon final
Живые обои для Android. Как создать. Тонкости. Продвижение
Use-Case is Everything
Android Location Api
Android - 14 - Geodata
Play Store
CPAлим темы
Презентация - SAMSUNG GT N5100 GALAXY NOTE 8.0 (uaseller.org)
Sensor android
Android Sensor and Framework - AWARE
Android Preferences
Win Phone 2 - Statistika
How to Pick a Technology Vendor: Top 6 Questions to Ask
Win Phone 2 - Qaliblər
Android Database
Sensor's inside
Ad

More from Noveo (20)

PPTX
Гуманитарные специальности в IT-индустрии
PPTX
Box model, display and position (HTML5 тема 07 - box model, display position)
PPTX
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
PPTX
Стилизация текста (HTML5 тема 05 - стилизация текста)
PPTX
Семантика текста (HTML5 тема 04 - семантика текста)
PPTX
Основы CSS (HTML5 тема 02 - основы CSS)
PPTX
Структура HTML документа (HTML5 тема 01 - структура html документа)
PPTX
Yii2
PPTX
Сессии и авторизация
PPTX
Rest
PPTX
PHP basic
PPTX
PHP Advanced
PPTX
PHP and MySQL
PPTX
MySQL
PDF
Push Notifications (Lecture 22 – push notifications)
PDF
RxJava+RxAndroid (Lecture 20 – rx java)
PDF
Работа с соцсетями (Lecture 19 – social)
PDF
Работа с геоданными (Lecture 18 – geolocation)
PDF
Animations (Lecture 17 – animations)
PDF
Toolbar (Lecture 16 – toolbar)
Гуманитарные специальности в IT-индустрии
Box model, display and position (HTML5 тема 07 - box model, display position)
Ссылки, списки и меню (HTML5 тема 06 - ссылки, списки и меню)
Стилизация текста (HTML5 тема 05 - стилизация текста)
Семантика текста (HTML5 тема 04 - семантика текста)
Основы CSS (HTML5 тема 02 - основы CSS)
Структура HTML документа (HTML5 тема 01 - структура html документа)
Yii2
Сессии и авторизация
Rest
PHP basic
PHP Advanced
PHP and MySQL
MySQL
Push Notifications (Lecture 22 – push notifications)
RxJava+RxAndroid (Lecture 20 – rx java)
Работа с соцсетями (Lecture 19 – social)
Работа с геоданными (Lecture 18 – geolocation)
Animations (Lecture 17 – animations)
Toolbar (Lecture 16 – toolbar)
Ad

04 ns array