Comment puis-je obtenir les x premiers éléments d’un NSArray dans Cocoa?

Nouveau sur le cacao, et il semble manquer quelque chose.

Quel est le moyen le plus élégant / idiomatique d’obtenir les premiers x éléments d’un NSArray tant NSArray ? De toute évidence, je peux les parcourir et les stocker manuellement, mais il semble qu’il y ait une méthode plus standard.

Je m’attendais à ce qu’il y ait un -arrayWithObjectsInRange: ou quelque chose de similaire, mais ne vois rien …

 NSArray* largeArray...// Contains 50 items... NSArray* smallArray = // fill in the blank // smallArray contains first 10 items from largeArray 

Merci!

Vous pouvez utiliser subarrayWithRange:

 NSArray *smallArray = [largeArray subarrayWithRange:NSMakeRange(0, 10)]; 
 firstNItems = [items subarrayWithRange:NSMakeRange(0, MIN(n, items.count))]; 

2ème paramètre est le nombre d’éléments de tableau à inclure dans la plage, pas l’index ‘à’

Dans Swift 3, vous pouvez utiliser ceci:

 let smallArray = largeArray.prefix(10)