我正在使用 NSDictionary 来存储一组值,并且我正在尝试将它们分配给一个 double 值。但是我不确定该怎么做,valueforkey 返回一个 id,它是一个指针。我曾尝试使用“*”获取实际值,但这不起作用。
这是代码
tempBrain.operand = [variables valueForKey:[(NSString*)obj stringByReplacingOccurencesOfString:VARIABLE_PREFIX withString:@""]];
tempBrain.operand 是 double 变量的 setter 方法。变量是我的 NSDictionary。
最佳答案
假设存储的值是一个 NSNumber
,您可以像这样使用 doubleValue
:
tempBrain.operand = [[variables objectForKey:[(NSString*)obj stringByReplacingOccurencesOfString:VARIABLE_PREFIX withString:@""]] doubleValue];
另请注意,我已将 valueForKey
更改为 objectForKey
,这是用于从 NSDictionary
获取对象的正确方法。
关于Objective-C valueforKey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4532299/