【问题标题】:Get all keys of an NSDictionary as an NSArray将 NSDictionary 的所有键作为 NSArray 获取
【发布时间】:2011-10-26 18:57:09
【问题描述】:

是否可以从特定的NSDictionary 获取所有密钥作为单独的NSArray

【问题讨论】:

    标签: objective-c nsarray nsdictionary


    【解决方案1】:

    随便用

    NSArray*keys=[dict allKeys];
    

    一般来说,如果您想知道特定类是否有特定方法,请查找 Apple 自己的文档。在这种情况下,请参阅NSDictionary class reference. 遍历所有方法。这样你会发现很多有用的方法。

    【讨论】:

    • 获取第一个键只有 NSString *firstKey = [dict allKeys][0];
    • @MazenKasser firstObject 是一个更安全的解决方案 - 如果字典没有任何键,应用程序不会崩溃:dict.allKeys.firstObject;
    • allKeys 返回的键的顺序是未定义的...所以 allKeys.firstObject 或 allKeys][0] 无论哪种方式都是危险的
    【解决方案2】:

    是的,这是可能的。使用allKeys方法:

    NSDictionary *yourDictionary;
    NSArray * yourKeys
    yourKeys = [yourDictionary allKeys];
    

    【讨论】:

      【解决方案3】:

      如果您想获取所有键和值,您可以这样做:

      for (NSString *key in dictionary) {
          id value = dictionary[key];
          NSLog(@"Value: %@ for key: %@", value, key);
      }
      

      【讨论】:

        猜你喜欢
        • 2011-06-29
        • 2013-02-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-11-27
        • 1970-01-01
        相关资源
        最近更新 更多