在objectiveC中,我有一个NSArray,让我们调用它NSArray* largeArray,我想NSArray* smallArray只用前面的x个对象得到一个新的
...或者,如果largeArray已经是<= x,我只想要一个largeArray的副本.因此在索引x之后截断任何对象.
这种方法:
NSArray *smallArray = [largeArray subarrayWithRange:NSMakeRange(0, x)];
Run Code Online (Sandbox Code Playgroud)
是这个非常相似的问题的答案.但是如果largeArray已经很小,它就会失败并出现错误.
Fog*_*ter 27
你可以这样做......
NSArray *smallArray = [largeArray subarrayWithRange:NSMakeRange(0, MIN(x, largeArray.count))];
Run Code Online (Sandbox Code Playgroud)
如果它小于x,那将采用前x个元素或完整数组.
如果largeArray.count是100.
如果x = 110,则将获得前100个结果.如果x = 90,那么它将获得前90个结果.
是的,有效:D