__NSCFNumber return 负值

__NSCFNumber return negative value

出于某种原因,我无法设置我的 NSNumber 值。

代码很简单:

    obj.objectId = [filteredArr[i] valueForKey:@"idx"];

其中 [[filteredArr[i] valueForKey:@"idx"] class]__NSCFNumber

应该是0到200之间的数字..但实际上是-5764607523034234861

NSNumber 和 NSString 响应方法 -intValue 其中 returns 一个 int.

NSNumber *myNumber = @([[filteredArr[i] valueForKey:@"idx"]intValue]); 

这可能对你有帮助。