我有一个应用程序,我将类型为[string:[int]]的字典从swift文件传递到目标c文件,然后传递给NSDictionary。通过这个过程,数据格式变得搞砸了,但最终我能够从字符串中访问每个int数组,正如NSDictionary所期望的那样。不幸的是,在整行的某个地方整数转换为类型' id',并将其更改回int,我这样做了:
NSLog(@"%d",(int)theThreeNotes[@"0"][0])
theThreeNotes [@" 0"] [0]应为0,但记录为55.你如何解决这个问题?
答案 0 :(得分:4)
如果字典传递给Objective-C,则所有整数都将成为NSNumber
个实例。 NSDictionary
/ NSArray
无法保存原始值。这意味着您必须在号码上拨打integerValue
,而不是盲目地向int
投降。
或者只使用以下方式打印:
NSLog(@"%@", theThreeNotes[@"0"][0])