NSMutableArray
NSMutableArray
класс объявляет программируемый интерфейс к объектам, управляющим модифицируемым массивом объектов. Этот класс добавляет вставку и операции удаления к основному обрабатывающему массив поведению, наследованному от NSArray
.
NSMutableArray “бесплатный соединенный мостом” с его Базовым дубликатом Основы, CFMutableArrayRef
. Посмотрите Бесплатное Образование моста для получения дополнительной информации.
Разделение на подклассы примечаний
Существует обычно маленькая причина разделить на подклассы NSMutableArray
. Класс преуспевает, что он разработан, чтобы сделать — поддерживают непостоянный, упорядоченный набор объектов. Но существуют ситуации где пользовательское NSArray
объект мог бы пригодиться. Вот несколько возможностей:
Изменение, как
NSMutableArray
хранит элементы его набора. Вы могли бы сделать это по причинам производительности или по лучшей совместимости с устаревшим кодом.Получая больше информации о том, что происходит с набором (например, сбор статистики).
Методы для переопределения
NSMutableArray
определяет пять примитивных методов:
В подклассе необходимо переопределить все эти методы. Необходимо также переопределить примитивные методы NSArray
класс.
Наследование
-
NSObject
-
NSArray
-
NSMutableArray
-
SBElementArray
-
NSObject
-
NSArray
-
NSMutableArray
-
SBElementArray
Соответствует
-
AnyObject
-
ArrayLiteralConvertible
-
CKRecordValue
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSCopying
-
NSFastEnumeration
-
NSMutableCopying
-
NSObjectProtocol
-
NSSecureCoding
-
Печатаемый
-
Reflectable
-
SequenceType
-
NSCopying
-
NSFastEnumeration
-
NSMutableCopying
-
NSObject
-
NSSecureCoding
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
-
Создает и возвращается
NSMutableArray
объект с достаточным количеством выделенной памяти для начального содержания данного числа объектов.Объявление
Objective C
+ (instancetype)arrayWithCapacity:(NSUInteger)
numItems
Параметры
numItems
Начальная способность нового массива.
Возвращаемое значение
Новое
NSMutableArray
объект с достаточным количеством выделенной памяти для содержанияnumItems
объекты.Обсуждение
Непостоянные массивы расширяются по мере необходимости;
numItems
просто устанавливает начальную способность объекта.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Создает и возвращает непостоянный массив containg содержание файла, указанного данным путем.
Объявление
Objective C
+ (NSMutableArray *)arrayWithContentsOfFile:(NSString *)
aPath
Параметры
aPath
Путь к файлу, содержащему строковое представление непостоянного массива, произведенного
writeToFile:atomically:
метод.Возвращаемое значение
Указан непостоянный массив, содержащий содержание файла
aPath
. Возвратыnil
если содержание файла не может быть проанализировано в непостоянный массив, если файл не может быть открыт или.Обсуждение
Непостоянное представление в виде массива в файле, идентифицированном
aPath
должен содержать только объекты списка свойств (NSString
,NSData
,NSDate
,NSNumber
,NSArray
, илиNSDictionaray
объекты). Для получения дополнительной информации см. Руководство по программированию Списка свойств. Даже если массив является непостоянным, объекты, содержавшие этим массивом, являются неизменными.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
Создает и возвращает непостоянный массив, содержащий содержание, указанное данным URL.
Объявление
Objective C
+ (NSMutableArray *)arrayWithContentsOfURL:(NSURL *)
aURL
Параметры
aURL
Расположение файла, содержащего строковое представление непостоянного массива, произведенного
writeToURL:atomically:
метод.Возвращаемое значение
Непостоянный массив, содержащий содержание, указанное
aURL
. Возвратыnil
если содержание расположения не может быть проанализировано в непостоянный массив, если расположение не может быть открыто или.Обсуждение
Представление в виде массива в расположении, идентифицированном
aURL
должен содержать только объекты списка свойств (NSString
,NSData
,NSDate
,NSNumber
,NSArray
, илиNSDictionaray
объекты). Даже если массив является непостоянным, объекты, содержавшие этим массивом, являются неизменными.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
Инициализирует недавно выделенный массив.
Объявление
Swift
init()
Objective C
- (instancetype)init
Возвращаемое значение
Массив.
Обсуждение
Этот метод является определяемым инициализатором.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.9 и позже.
См. также
-
init (способность:) - initWithCapacity:
Определяемый инициализаторВозвращает массив, инициализированный с достаточным количеством памяти для начального содержания данного числа объектов.
Объявление
Swift
init(capacity
numItems
: Int)Objective C
- (instancetype)initWithCapacity:(NSUInteger)
numItems
Параметры
numItems
Начальная способность нового массива.
Возвращаемое значение
Массив, инициализированный с достаточным количеством памяти для содержания
numItems
объекты. Возвращенный объект мог бы отличаться, чем исходный получатель.Обсуждение
Непостоянные массивы расширяются по мере необходимости;
numItems
просто устанавливает начальную способность объекта.Этот метод является определяемым инициализатором.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Инициализирует недавно выделенный непостоянный массив с содержанием файла, указанного данным путем
Объявление
Swift
convenience init?(contentsOfFile
aPath
: String)Objective C
- (NSMutableArray *)initWithContentsOfFile:(NSString *)
aPath
Параметры
aPath
Путь к файлу, содержащему представление непостоянного массива, произведенного
writeToFile:atomically:
метод.Возвращаемое значение
Непостоянный массив, инициализированный для содержания содержания файла, указанного
aPath
илиnil
если файл не может быть открыт, или содержание файла не может быть проанализировано в непостоянный массив. Возвращенный объект должен отличаться, чем исходный получатель.Обсуждение
Непостоянное представление в виде массива в файле, идентифицированном
aPath
должен содержать только объекты списка свойств (NSString
,NSData
,NSDate
,NSNumber
,NSArray
, илиNSDictionaray
объекты). Даже если массив является непостоянным, объекты, содержавшие этим массивом, являются неизменными.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-
Инициализированный недавно выделенный непостоянный массив с содержанием расположения указан данным URL.
Объявление
Swift
convenience init?(contentsOfURL
aURL
: NSURL)Objective C
- (NSMutableArray *)initWithContentsOfURL:(NSURL *)
aURL
Параметры
aURL
Передозировка расположения файл, содержащий строку representaion непостоянного массива, произведенного
writeToURL:atomically:
метод.Возвращаемое значение
Непостоянный массив, инициализированный для содержания содержания, указанного
aURL
. Возвратыnil
если содержание расположения не может быть проанализировано в непостоянный массив, если расположение не может быть открыто или. Возвращенные объекты должны отличаться, чем исходный получатель.Обсуждение
Представление в виде массива в расположении, идентифицированном
aURL
должен содержать только объекты списка свойств (NSString
,NSData
,NSDate
,NSNumber
,NSArray
, илиNSDictionaray
объекты). Даже если массив является непостоянным, объекты, содержавшие этим массивом, являются неизменными.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.10 и позже.
-
Вставляет данный объект в конце массива.
Объявление
Swift
func addObject(_
anObject
: AnyObject)Objective C
- (void)addObject:(id)
anObject
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Добавляют объекты, содержавшиеся в другом данном массиве до конца содержания приемной антенной решетки.
Объявление
Swift
func addObjectsFromArray(_
otherArray
: [AnyObject])Objective C
- (void)addObjectsFromArray:(NSArray *)
otherArray
Параметры
otherArray
Массив объектов добавить до конца содержания приемной антенной решетки.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Вставляет данный объект в содержание массива в данном индексе.
Объявление
Swift
func insertObject(_
anObject
: AnyObject, atIndexindex
: Int)Objective C
- (void)insertObject:(id)
anObject
atIndex:(NSUInteger)index
Параметры
anObject
index
Обсуждение
Если
index
уже занят, объекты вindex
и вне смещаются путем добавления1
к их индексам для создания места.Обратите внимание на то, что
NSArray
объекты не походят на массивы C. Т.е. даже при том, что Вы указываете размер при создании массива указанный размер расценивается как «подсказка»; фактический размер массива все еще 0. Это означает, что Вы не можете вставить объект в индексе, больше, чем текущее количество массива. Например, если массив содержит два объекта, его размер равняется 2, таким образом, можно добавить объекты в индексах 0, 1, или 2. Индекс 3 недопустим и за пределы; при попытке добавить объект в индексе 3 (когда размер массива равняется 2),NSMutableArray
повышает исключение.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Вставляет объекты в предоставленный массив в приемную антенную решетку в указанных индексах.
Объявление
Swift
func insertObjects(_
objects
: [AnyObject], atIndexesindexes
: NSIndexSet)Objective C
- (void)insertObjects:(NSArray *)
objects
atIndexes:(NSIndexSet *)indexes
Параметры
objects
Массив объектов вставить в приемную антенную решетку.
indexes
Индексы те, в который объекты в
objects
должен быть вставлен. Количество расположений вindexes
должен равняться количествуobjects
. Для получения дополнительной информации посмотрите Обсуждение.Обсуждение
Каждый объект в
objects
вставляется в приемную антенную решетку поочередно в соответствующем расположении, указанном вindexes
после того, как более ранние вставки были сделаны. Реализация концептуально подобна проиллюстрированному в следующем примере.- void insertObjects:(NSArray *)additions atIndexes:(NSIndexSet *)indexes
{
NSUInteger currentIndex = [indexes firstIndex];
NSUInteger i, count = [indexes count];
for (i = 0; i < count; i++)
{
[self insertObject:[additions objectAtIndex:i] atIndex:currentIndex];
currentIndex = [indexes indexGreaterThanIndex:currentIndex];
}
}
Получающееся поведение проиллюстрировано следующим примером.
NSMutableArray *array = [NSMutableArray arrayWithObjects: @"one", @"two", @"three", @"four", nil];
NSArray *newAdditions = [NSArray arrayWithObjects: @"a", @"b", nil];
NSMutableIndexSet *indexes = [NSMutableIndexSet indexSetWithIndex:1];
[indexes addIndex:3];
[array insertObjects:newAdditions atIndexes:indexes];
NSLog(@"array: %@", array);
// Output: array: (one, a, two, b, three, four)
Расположения, указанные
indexes
май поэтому только превышает границы приемной антенной решетки, если одно расположение указывает количество массива или количество массива после предыдущих вставок, и другие расположения, превышающие границы, делают так непрерывным способом от того расположения, как проиллюстрировано в следующих примерах.В этом примере оба новых объекта добавляются до конца массива.
NSMutableArray *array = [NSMutableArray arrayWithObjects: @"one", @"two", @"three", @"four", nil];
NSArray *newAdditions = [NSArray arrayWithObjects: @"a", @"b", nil];
NSMutableIndexSet *indexes = [NSMutableIndexSet indexSetWithIndex:5];
[indexes addIndex:4];
[array insertObjects:newAdditions atIndexes:indexes];
NSLog(@"array: %@", array);
// Output: array: (one, two, three, four, a, b)
Если Вы заменяете
[indexes addIndex:4]
с[indexes addIndex:6]
(так, чтобы индексы равнялись 5 и 6), тогда приложение перестанет работать с за пределы исключение.В этом примере два объекта добавляются в середину массива и другого в текущем конце массива (индекс 4), что означает, что это является третьим от конца измененного массива.
NSMutableArray *array = [NSMutableArray arrayWithObjects: @"one", @"two", @"three", @"four", nil];
NSArray *newAdditions = [NSArray arrayWithObjects: @"a", @"b", @"c", nil];
NSMutableIndexSet *indexes = [NSMutableIndexSet indexSetWithIndex:1];
[indexes addIndex:2];
[indexes addIndex:4];
[array insertObjects:newAdditions atIndexes:indexes];
NSLog(@"array: %@", array);
// Output: array: (one, a, b, two, c, three, four)
Если Вы заменяете
[indexes addIndex:4]
с[indexes addIndex:6]
(так, чтобы индексы равнялись 1, 2, и 6), тогда вывод(one, a, b, two, three, four, c)
.Если
objects
илиindexes
nil
этот метод повысит исключение.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
-
Освобождает массив всех его элементов.
Объявление
Swift
func removeAllObjects()
Objective C
- (void)removeAllObjects
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет объект с оцененным самым высоким образом индексом в массиве
Объявление
Swift
func removeLastObject()
Objective C
- (void)removeLastObject
Обсуждение
removeLastObject
повышает исключениеNSRangeException
при отсутствии объектов в массиве.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет все случаи в массиве данного объекта.
Объявление
Swift
func removeObject(_
anObject
: AnyObject)Objective C
- (void)removeObject:(id)
anObject
Параметры
anObject
Объект удалить из массива.
Обсуждение
Этот метод использование
indexOfObject:
определять местоположение соответствий и затем удаляет их при помощиremoveObjectAtIndex:
. Таким образом соответствия определяются на основе ответа объекта наisEqual:
сообщение. Если массив не содержитanObject
, метод не имеет никакого эффекта (несмотря на то, что он действительно подвергается издержкам поиска содержания).Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет все случаи в указанном диапазоне в массиве данного объекта.
Объявление
Swift
func removeObject(_
anObject
: AnyObject, inRangeaRange
: NSRange)Objective C
- (void)removeObject:(id)
anObject
inRange:(NSRange)aRange
Параметры
anObject
Объект, который будет удален из содержания массива.
aRange
Обсуждение
Соответствия определяются на основе ответа объекта на
isEqual:
сообщение. Если массив не содержитanObject
вaRange
, метод не имеет никакого эффекта (несмотря на то, что он действительно подвергается издержкам поиска содержания).Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет объект в
index
.Объявление
Swift
func removeObjectAtIndex(_
index
: Int)Objective C
- (void)removeObjectAtIndex:(NSUInteger)
index
Параметры
index
Обсуждение
Устранить разрыв, все элементы вне
index
перемещены путем вычитания 1 от их индекса.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет объекты в указанных индексах от массива.
Объявление
Swift
func removeObjectsAtIndexes(_
indexes
: NSIndexSet)Objective C
- (void)removeObjectsAtIndexes:(NSIndexSet *)
indexes
Параметры
indexes
Индексы объектов удалить из массива. Расположения, указанные
indexes
должен лечь в границах массива.Обсуждение
Этот метод подобен
removeObjectAtIndex:
, но позволяет Вам эффективно удалять многократные объекты с единственной работой.indexes
указывает расположения объектов, которые будут удалены данный состояние массива, когда метод вызывается, как проиллюстрировано в следующем примере:NSMutableArray *array = [NSMutableArray arrayWithObjects: @"one", @"a", @"two", @"b", @"three", @"four", nil];
NSMutableIndexSet *indexes = [NSMutableIndexSet indexSetWithIndex:1];
[indexes addIndex:3];
[array removeObjectsAtIndexes:indexes];
NSLog(@"array: %@", array);
// Output: array: (one, two, three, four)
Если
indexes
nil
, этот метод повышает исключение.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
Удаляет все случаи данного объекта в массиве.
Объявление
Swift
func removeObjectIdenticalTo(_
anObject
: AnyObject)Objective C
- (void)removeObjectIdenticalTo:(id)
anObject
Параметры
anObject
Объект удалить из массива.
Обсуждение
Этот метод использует
indexOfObjectIdenticalTo:
метод для определения местоположения соответствий и затем удаляет их при помощиremoveObjectAtIndex:
. Таким образом соответствия определяются с помощью объектных адресов. Если массив не содержитanObject
, метод не имеет никакого эффекта (несмотря на то, что он действительно подвергается издержкам поиска содержания).Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет все случаи
anObject
в указанном диапазоне в массиве.Объявление
Swift
func removeObjectIdenticalTo(_
anObject
: AnyObject, inRangeaRange
: NSRange)Objective C
- (void)removeObjectIdenticalTo:(id)
anObject
inRange:(NSRange)aRange
Параметры
anObject
Объект удалить из массива в
aRange
.aRange
Обсуждение
Этот метод использует
indexOfObjectIdenticalTo:
метод для определения местоположения соответствий и затем удаляет их при помощиremoveObjectAtIndex:
. Таким образом соответствия определяются с помощью объектных адресов. Если массив не содержитanObject
вaRange
, метод не имеет никакого эффекта (несмотря на то, что он действительно подвергается издержкам поиска содержания).Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет конкретное количество объектов от массива, начинающегося в указанном индексе.
Оператор осуждения
Вместо этого ofusing этот метод, использовать
removeObjectsAtIndexes:
вместо этого.Объявление
Objective C
- (void)removeObjectsFromIndices:(NSUInteger *)
indices
numIndices:(NSUInteger)count
Параметры
indices
Массив C индексов объектов удалить из приемной антенной решетки.
count
Число объектов удалить из приемной антенной решетки.
Обсуждение
Этот метод подобен
removeObjectAtIndex:
, но это позволяет Вам эффективно удалять многократные объекты с единственной работой. При сортировке списка индексов в порядке возрастания Вы улучшите скорость этой работы.Этот метод не может быть отправлен в удаленный объект с распределенными объектами.
Специальные замечания
Этот устаревший метод использует массив C индексов.
removeObjectsAtIndexes:
метод используетNSIndexSet
который обеспечивает более эффективный способ индексировать в массив.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.6.
-
Удаляет из приемной антенной решетки объекты в другом данном массиве.
Объявление
Swift
func removeObjectsInArray(_
otherArray
: [AnyObject])Objective C
- (void)removeObjectsInArray:(NSArray *)
otherArray
Параметры
otherArray
Массив, содержащий объекты, которые будут удалены из приемной антенной решетки.
Обсуждение
Этот метод подобен
removeObject:
, но это позволяет Вам эффективно удалять большие наборы объектов с единственной работой. Если приемная антенная решетка не содержит объекты вotherArray
, метод не имеет никакого эффекта (несмотря на то, что он действительно подвергается издержкам поиска содержания).Этот метод предполагает что все элементы в
otherArray
ответьте наhash
иisEqual:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Удаляет из массива каждый из объектов в данном диапазоне.
Объявление
Swift
func removeObjectsInRange(_
aRange
: NSRange)Objective C
- (void)removeObjectsInRange:(NSRange)
aRange
Параметры
aRange
Диапазон объектов, которые будут удалены из массива.
Обсуждение
Объекты удалены с помощью
removeObjectAtIndex:
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Заменяет объект в
index
сanObject
.Объявление
Swift
func replaceObjectAtIndex(_
index
: Int, withObjectanObject
: AnyObject)Objective C
- (void)replaceObjectAtIndex:(NSUInteger)
index
withObject:(id)anObject
Параметры
index
anObject
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Заменяет объект в индексе с новым объектом, возможно добавляя объект.
Объявление
Objective C
- (void)setObject:(id)
anObject
atIndexedSubscript:(NSUInteger)index
Параметры
anObject
index
Обсуждение
Если
index
равноcount
, элемент добавляется до конца массива, увеличивая массив.Оператор импорта
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.8 и позже.
-
Заменяет объекты в приемной антенной решетке в расположениях, указанных с объектами от данного массива.
Объявление
Swift
func replaceObjectsAtIndexes(_
indexes
: NSIndexSet, withObjectsobjects
: [AnyObject])Objective C
- (void)replaceObjectsAtIndexes:(NSIndexSet *)
indexes
withObjects:(NSArray *)objects
Параметры
indexes
Индексы объектов, которые будут заменены.
objects
Объекты, которыми можно заменить объекты в приемной антенной решетке в индексах, указанных
indexes
. Количество расположений вindexes
должен равняться количествуobjects
.Обсуждение
Индексы в
indexes
используются в том же порядке в качестве объектов вobjects
.Если
objects
илиindexes
nil
, этот метод будет повышать исключение.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
-
replaceObjectsInRange (_: withObjectsFromArray:range:) - replaceObjectsInRange:withObjectsFromArray:range:
Заменяет объекты в приемной антенной решетке, указанной одним данным диапазоном с объектами в другом массиве, указанном другим диапазоном.
Объявление
Параметры
aRange
Диапазон объектов, которые будут заменены в (или удалены из) приемная антенная решетка.
otherArray
Массив объектов, из которых можно выбрать замены для объектов в
aRange
.otherRange
Диапазон объектов быть выбранным из
otherArray
как замены для объектов вaRange
.Обсуждение
Длины
aRange
иotherRange
не должны быть равными: ЕслиaRange
более длинно, чемotherRange
, дополнительные объекты в приемной антенной решетке удалены; еслиotherRange
более длинно, чемaRange
, дополнительные объекты отotherArray
вставляются в приемную антенную решетку.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Заменяет объекты в приемной антенной решетке, указанной данным диапазоном со всеми объектами от данного массива.
Объявление
Swift
func replaceObjectsInRange(_
aRange
: NSRange, withObjectsFromArrayotherArray
: [AnyObject])Параметры
aRange
Диапазон объектов, которые будут заменены в (или удалены из) приемная антенная решетка.
otherArray
Массив объектов, из которых можно выбрать замены для объектов в
aRange
.Обсуждение
Если
otherArray
имеет меньше объектов, чем указаноaRange
, дополнительные объекты в приемной антенной решетке удалены. ЕслиotherArray
имеет больше объектов, чем указаноaRange
, дополнительные объекты отotherArray
вставляются в приемную антенную решетку.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Устанавливает элементы приемной антенной решетки в тех в другом данном массиве.
Объявление
Swift
func setArray(_
otherArray
: [AnyObject])Objective C
- (void)setArray:(NSArray *)
otherArray
Параметры
otherArray
Массив объектов, которыми можно заменить содержание приемной антенной решетки.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
-
Оценивает данный предикат против содержания массива и оставляет только объекты тем соответствием.
Объявление
Swift
func filterUsingPredicate(_
predicate
: NSPredicate)Objective C
- (void)filterUsingPredicate:(NSPredicate *)
predicate
Параметры
predicate
Предикат для оценки против элементов массива.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.4 и позже.
См. также
filteredArrayUsingPredicate:
(NSArray
)
-
Обменивается объектами в массиве в данных индексах.
Объявление
Objective C
- (void)exchangeObjectAtIndex:(NSUInteger)
idx1
withObjectAtIndex:(NSUInteger)idx2
Параметры
idx1
Индекс объекта, которым можно заменить объект в индексе
idx2
.idx2
Индекс объекта, которым можно заменить объект в индексе
idx1
.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.2 и позже.
-
Сортирует приемную антенную решетку с помощью данного массива дескрипторов вида.
Объявление
Swift
func sortUsingDescriptors(_
sortDescriptors
: [AnyObject])Objective C
- (void)sortUsingDescriptors:(NSArray *)
sortDescriptors
Параметры
sortDescriptors
Массив, содержащий
NSSortDescriptor
объекты использовать для сортировки содержания приемной антенной решетки.Обсуждение
Посмотрите
NSSortDescriptor
для получения дополнительной информации.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.3 и позже.
-
Сортирует массив с помощью метода сравнения, указанного данным
NSComparator
блок.Объявление
Swift
func sortUsingComparator(_
cmptr
: NSComparator)Objective C
- (void)sortUsingComparator:(NSComparator)
cmptr
Параметры
cmptr
Блок компаратора.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
Сортирует массив с помощью указанных опций и метода сравнения, указанного данным
NSComparator
блок.Объявление
Swift
func sortWithOptions(_
opts
: NSSortOptions, usingComparatorcmptr
: NSComparator)Objective C
- (void)sortWithOptions:(NSSortOptions)
opts
usingComparator:(NSComparator)cmptr
Параметры
opts
Битовая маска, указывающая опции для вида (должно ли это быть выполнено одновременно и должно ли это быть выполнено устойчиво).
cmptr
Блок компаратора.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.6 и позже.
-
Сортирует элементы массива в порядке возрастания, как определено функцией сравнения
compare
.Объявление
Swift
func sortUsingFunction(_
compare
: CFunctionPointer<((AnyObject!, AnyObject!, UnsafeMutablePointer<Void>) -> Int)>, contextcontext
: UnsafeMutablePointer<Void>)Objective C
- (void)sortUsingFunction:(NSInteger (*)(id, id, void *))
compare
context:(void *)context
Параметры
compare
Функция сравнения для использования для сравнения двух элементов за один раз.
Параметры функции являются двумя объектами выдержать сравнение и параметр контекста,
context
. Функция должна возвратитьсяNSOrderedAscending
если первый элемент меньше, чем второе,NSOrderedDescending
если первый элемент больше, чем второе, иNSOrderedSame
если элементы равны.context
Аргумент context, который будет передан сравнить функции.
Обсуждение
Этот подход позволяет сравнению основываться на некотором внешнем параметре, такой как, чувствительна ли символьная сортировка к регистру или нечувствительна к регистру.
Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
– sortUsingDescriptors:
– sortUsingSelector:
sortedArrayUsingFunction:context:
(NSArray
) -
Сортирует элементы массива в порядке возрастания, как определено методом сравнения, указанным данным селектором.
Объявление
Swift
func sortUsingSelector(_
comparator
: Selector)Objective C
- (void)sortUsingSelector:(SEL)
comparator
Параметры
comparator
Селектор, указывающий метод сравнения использовать для сравнения элементов в массиве.
comparator
сообщение отправляется в каждый объект в массиве и имеет как его отдельный аргумент другой объект в массиве.comparator
метод должен возвратитьсяNSOrderedAscending
если массив меньше, чем параметр,NSOrderedDescending
если массив больше, чем параметр, иNSOrderedSame
если они равны.Оператор импорта
Objective C
@import Foundation;
Swift
import Foundation
Доступность
Доступный в OS X v10.0 и позже.
См. также
– sortUsingDescriptors:
– sortUsingFunction:context:
sortedArrayUsingSelector:
(NSArray
)