给nsdictionary的key添加一个数组 -问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

给nsdictionary的key添加一个数组

想给nsdictionarykey添加一个数组,其中每个key都是一个question,每个question对应多个answer

Question1 = [Answer1], [Answer2] , [Answer3];

Question2 = [Answer1], [Answer2] , [Answer3];

然后我尝试用下面的代码时报错:

`
No Visible @interface for NSDictionary declares the selector 'setObject::forKey'
`
代码:

//answers
_surveyAnswers1 = [[NSMutableDictionary alloc] init];
NSArray *myArrayAnswers1 = [NSArray arrayWithObjects:@"One",@"Two", nil];
NSArray *myArrayAnswers2 = [NSArray arrayWithObjects:@"Three",@"Four", nil];
[_surveyAnswers1 setObject:myArrayAnswers1 forKey:@"FirstKey"];
[_surveyAnswers1 setObject:myArrayAnswers2 forKey:@"SecondKey"];

不知道怎么正确添加?

展开
收起
爵霸 2016-03-26 09:48:13 1985 0
1 条回答
写回答
取消 提交回答
  • 爵霸

    你好像把_surveyAnswers1声明为NSDictionary了:
    `
    NSDictionary * _surveyAnswers1;
    `

    应该声明为NSMutableDictionary:
    `
    NSMutableDictionary * _surveyAnswers1;
    `

    编译器根据声明的类型来判断哪些方法是有效的,NSDictionary没有这个方法setObject:forKey:,因此编译器会发出警告

    2019-07-17 19:15:24
    赞同 展开评论 打赏
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载