[英]Getting an NSString from an NSCFString
我阅读了 SO 并在谷歌上做了相当多的事情,但我无法找到我的问题的答案......
我有一个返回NSCFString's
NSDictionary
,我需要的是一个 NSString,这样我就可以使用它的 doubleValue function。 我一生都无法弄清楚如何将我的NSCFString
变成NSString
。 我尝试了以下但没有成功:
NSString* lng_coord = (NSString*)[dict objectForKey:key];
if ([lng_coord class] == [NSString class])
NSLog(@"lng coord is an exact match with NSString class");
else {
NSLog(@"lng coord doesn't match NSString class");
NSLog(@"The class of lng_coord is %@", [[dict objectForKey:key] class]);
}
NSLog(@"%@", lng_coord);
[CelebsAnnotation setLongitude:[lng_coord doubleValue]];
这是来自控制台的 output:
lng coord doesn't match NSString class
The class of lng_coord is NSCFString
49.2796758
NSCFString
是NSString
的私有子类,你可以把它当作一个子类使用。
由于像class clusters这样的模式,你不应该直接比较这里的类 - 使用-isKindOfClass:
代替:
if ([lng_coord isKindOfClass:[NSString class]]) {
// ...
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.