【问题标题】:Error: index 1 beyond bounds for empty array错误:空数组的索引 1 超出范围
【发布时间】:2014-11-04 12:09:33
【问题描述】:

我创建了一个NSMutableArray 来在那里存储一些字符。当我在那里添加一些字符时,它会给我一个错误。这是我的代码:

@property(strong,nonatomic) NSMutableArray *actions;     < ViewController.h

@synthesize actions;                                     < ViewController.m


actions = [[NSMutableArray alloc]init];    
switch ([sender tag]) {
        case 0:
            currentLabel = water;
            [actions insertObject:@"0" atIndex:i];
            i++;
            break;
        case 1:
            currentLabel = coke;
            [actions insertObject:@"1" atIndex:i];
            i++;
            break;
        case 2:
            currentLabel = fanta;
            [actions insertObject:@"2" atIndex:i];
            i++;
            break;
}    

【问题讨论】:

  • 如果数组还没有i 元素,显然你不能在索引i 处插入元素。
  • 第一次调用insertObject:方法,i是1,应该是0。
  • i 被初始化为0

标签: objective-c xcode nsmutablearray


【解决方案1】:

请改用[actions addObject:@"X"]。如果数组没有元素,则不能在索引 1 处插入对象。

【讨论】:

  • 当我使用addObject时,我的数组中只有一个对象。
猜你喜欢
  • 2012-10-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-02
  • 1970-01-01
相关资源
最近更新 更多