objective-c - 字符串格式 : with unknown datatype

标签 objective-c nsstring foundation

我正在制作一个框架,并且我有以下代码(conditions 是一个 NSDictionary):

for (NSString *key in conditions) {
    id value = [[conditions valueForKey:key] retain];


    // Check if number or string
    if ([value class] == [NSString class]) {
      conditionsString = [NSString stringWithFormat:@"%@='%@' ", key, value];
    } else {
      conditionsString = [NSString stringWithFormat:@"%@=%@ ", key, value];
    }
  }

如果value是NSString,则应添加引号,否则不应添加代码。但是,如果不是 NSString,我不知道 value 的数据类型,因为它可能是 NSNumber、NSInteger、int、float、double 等...我不能只使用 %@%d 但我确信有人知道如何做到这一点?谢谢。

最佳答案

看看this .

编辑:在你的情况下这很简单,因为 nsdictionary 只能包含 nsobjects。所以 %@ 就可以了。

关于objective-c - 字符串格式 : with unknown datatype,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3847941/

相关文章:

objective-c - 无需子类化即可向 UIControl 添加属性

objective-c - NSString的高效字符处理

ios - 删除 NSString 中所有出现的地方

objective-c - 将字节序交换为有符号整数的适当方法是什么?

ios - NSPortMessage 在 iOS API 中吗?

iOS:将 UTC 时区转换为设备本地时区

ios - 如何获取 PHAsset 的文件大小?

objective-c - cocoa 窗口最大垂直尺寸,但不是水平尺寸

objective-c - 将密码范围移出界限

ios - 是否可以访问另一个 iOS 应用程序的文件提供程序