可变数组中的最大元素 iOS

Max elements in a Mutable Array iOS

我正在从 Parse DB 中检索一些数据并将对象的字符串添加到之前初始化的可变数组中,但是当它有 100 个元素时它停止添加元素,是否可以使数组更大?如果是,如何?

编辑:

从 Parse 中检索到的对象数组也是 100 个 elem,但是在 DB 中有超过 100 个对象具有键:"Nom"

查询代码:

NSString *parseClassName = [[NSUserDefaults standardUserDefaults] stringForKey:@"ParseObjectDefault"];
    PFQuery *queryDades = [PFQuery queryWithClassName:parseClassName];
    [queryDades whereKeyExists:@"Nom"];
    [queryDades findObjectsInBackgroundWithBlock:^(NSArray *objects, NSError *error) {
        if(!error){
            for (PFObject *corredor in objects){
                NSString *nom = [corredor objectForKey:@"Nom"];
                [self.corredorsNomArray addObject:nom];
                NSString *dorsal = [corredor objectForKey:@"Dorsal"];
                [self.corredorsDorsalArray addObject:dorsal];
            }
        } else {
            NSLog(@"Error:%@ %@", error, [error userInfo]);
        }
    }];

解决方案:

默认情况下解析限制为 100,因此我不得不像这样更改查询限制:

queryDades.limit = 1000;

解析默认限制为 100 个对象。检查你的数组大小。您可以将上限设为 1000。

NSMutableArray 可以容纳的最大元素,以及 - (instancetype)initWithCapacity:(NSUInteger)numItems NS_DESIGNATED_INITIALIZER 上的方法 NSMutableArray 实例将 unsigned int 作为参数。因此,无论目标机器上 unsigned int 的最大值是可以添加到数组中的对象的理论限制。然而,实际限制更可能取决于可用内存量。

注意:如果有什么东西导致数组的 100 个对象限制

,您还应该检查您的代码