objective-c - objective - xcode
¿Cómo obtengo los primeros x elementos de un NSArray en Cocoa? (4)
Nuevo en Cocoa, y parece que falta algo.
¿Cuál es la forma más elegante / idiomática de obtener los primeros x elementos de un NSArray
como otro NSArray
? Obviamente, puedo iterar a través de ellos y almacenarlos manualmente, pero parece que tiene que haber un método más estándar para hacer esto.
Esperaba que hubiera un -arrayWithObjectsInRange:
o algo similar, pero no veo nada ...
NSArray* largeArray...// Contains 50 items...
NSArray* smallArray = // fill in the blank
// smallArray contains first 10 items from largeArray
¡Gracias!
El segundo parámetro es el número de elementos de la matriz para incluir en el rango, no el índice ''to''
En Swift 3 puedes usar esto:
let smallArray = largeArray.prefix(10)
Puede usar subarrayWithRange:
NSArray *smallArray = [largeArray subarrayWithRange:NSMakeRange(0, 10)];
firstNItems = [items subarrayWithRange:NSMakeRange(0, MIN(n, items.count))];