12
iOS Internship 2014 NSArray+NSMutableArray Максим Забелин

04 ns array

  • Upload
    noveo

  • View
    272

  • Download
    0

Embed Size (px)

Citation preview

iOS Internship 2014NSArray+NSMutableArray

Максим Забелин

FoundationNSArray+NSMutableArray

Упорядоченный набор объектов.Нумерация начинается с 0, объекты могут быть любого класса.

NSArray - это ...

FoundationNSArray+NSMutableArray

● Дополнить имеющийся массив● Получить подмассив из имеющегося

массива● Сортировать имеющийся массив

Как создать новый массив на основе имеющегося?

FoundationNSArray+NSMutableArray

- (NSArray *)arrayByAddingObject:(id)anObject;- (NSArray *)arrayByAddingObjectsFromArray:(NSArray *)otherArray;

Дополнение

FoundationNSArray+NSMutableArray

- (NSArray *)subarrayWithRange:(NSRange)range;- (NSArray *)filteredArrayUsingPredicate:(NSPredicate *)predicate;

Взятие подмассива

FoundationNSArray+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

};

Сортировка

FoundationNSArray+NSMutableArray

- (NSUInteger)indexOfObject:(id)anObject; - (NSUInteger)indexOfObjectIdenticalTo:(id)anObject;

Порядковый номер объекта внутри массива

FoundationNSArray+NSMutableArray

-(NSIndexSet*)indexesOfObjectsWithOptions:(NSEnumerationOptions)opts passingTest:(BOOL (^)(id obj, NSUInteger idx, BOOL *stop))predicate;

+ еще несколько методов

Индексы элементов массива, удовлетворяющих заданым условиям

FoundationNSArray+NSMutableArray

- (id)initWithContentsOfFile:(NSString *)path;- (id)initWithContentsOfURL:(NSURL *)url;

- (BOOL)writeToFile:(NSString *)path atomically:(BOOL)useAuxiliaryFile;- (BOOL)writeToURL:(NSURL *)url atomically:(BOOL)atomically;

Чтение массива с “диска” и запись массива на “диск”

FoundationNSArray+NSMutableArray

- (id)firstObject;- (id)lastObject;

… и еще пара полезных методов

FoundationNSArray+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

FoundationNSArray+NSMutableArray

1. Прочитать документацию к NSArray,2. Прочитать документацию к NSMutableArray.

Задание для самостоятельного изучения