【问题标题】:How i can fetch array in xcode?我如何在 xcode 中获取数组?
【发布时间】:2012-11-04 01:38:06
【问题描述】:

如何获取字典的值而不是循环。我知道如何使用以下方法获取单个值:

NSString *valueStr = [dict objectForKey:@"Key2"];

我需要通过循环所有键来获取,我需要在字典中搜索一个值。

【问题讨论】:

  • 请更清楚您要达到的目标。数组是指字典吗?你想获取什么?

标签: iphone xcode


【解决方案1】:

由于您似乎正在尝试使用NSDictionary,因此您可能想做这样的事情:

for (NSString *key in [dict allKeys]){
    NSLog(@"%@", [dict objectForKey:key]);
}

或者如果您不想使用循环,您可以执行以下操作:

NSArray *keys = [dict allKeys];
NSArray *values = [dict allValues];

【讨论】:

    【解决方案2】:
    for (NSString *key in <#dictionary#>)
    {
        <#!loopcontents#>
        [dictionary objectForKey:key]
    }
    

    【讨论】:

      【解决方案3】:

      您似乎有一个NSDictionary,您可以通过以下方式访问所有键/值:

      NSArray *keys = [dict allKeys];
      NSArray *values = [dict allValues];
      

      参考https://developer.apple.com/library/mac/#documentation/Cocoa/Reference/Foundation/Classes/NSDictionary_Class/Reference/Reference.html

      当然,您可以使用

      循环遍历该键值对
      for (NSString *key in [dict allKeys]) {
      
          //get value
          NSString *value = [dict objectForKey:key];
      
          //print to log
          NSLog (@"%@, %@", key, value);
      }
      

      【讨论】:

        【解决方案4】:

        结合来自 Omarj 和 Rene 的答案:

        for (NSString *key in [dict allKeys])
        {
            NSString *value = [dict objectForKey:key];
        }
        

        【讨论】:

        • 谢谢你,我有同样的想法并在你回答时编辑了我的帖子:)
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-02-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-01-26
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多