iOS如何用逗号分隔的Array对象转换为字符串?

时间:2015-04-23 04:42:27

标签: ios objective-c ios8

我有一个名为child_list的数组,如child_list:" 9,8,21,22,20,24,25",在NSString的索引0处获取我将它转换为字符串,但当我使用NSMutableArray它崩溃时,我不知道为什么。

我的代码在这里:

if([theDictionary objectForKey:@"child_list"])
    {
        NSString *str = [[theDictionary objectForKey:@"child_list"]objectAtIndex:0];
        NSLog(@"Child List %@",str);
        _child_list = [[NSMutableArray alloc ]initWithObjects: [str componentsSeparatedByString:@","], nil];
    }

当断点出现在str时,它会在_child_list崩溃时显示结果。

2 个答案:

答案 0 :(得分:1)

在分配_child_list NSMutableArray时使用 initWithArray 方法

 if([theDictionary objectForKey:@"child_list"])
    {
        NSString *str = [[theDictionary objectForKey:@"child_list"]objectAtIndex:0];
        NSLog(@"Child List %@",str);
        _child_list = [[NSMutableArray alloc ] initWithArray:[str componentsSeparatedByString:@","]];
    }

答案 1 :(得分:0)

请分享您的日志返回内容和您使用的字典.. 代码[str componentsSeparatedByString:@","]返回一个数组。因此,当您分配可变数组时,您需要创建数组数组...而是使用initWithObjects,使用initWithArray方法并将[str componentsSeparatedByString:@","]传递给它。