首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >NSDictionary查找keyPath

NSDictionary查找keyPath
EN

Stack Overflow用户
提问于 2017-11-03 16:22:05
回答 1查看 279关注 0票数 3

我有一个随机字典,我想迭代字典中的所有对象。有没有办法在字典里找到object的keyPath?

假设我们有这本字典。

代码语言:javascript
复制
{
  "glossary": {
    "title": "example glossary",
    "GlossDiv": {
      "title": "S",
      "GlossList": {
        "GlossEntry": {
          "ID": "SGML",
          "SortAs": "SGML",
          "GlossTerm": "Standard Generalized Markup Language",
          "Acronym": "SGML",
          "Abbrev": "ISO 8879:1986",
          "GlossDef": {
            "para": "A meta-markup language, used to create markup languages such as DocBook.",
            "GlossSeeAlso": [
              "GML",
              "XML"
            ]
          },
          "GlossSee": "markup"
        }
      }
    }
  }
}

现在我想找到GlossEntry或任何其他对象的keyPath。

EN

回答 1

Stack Overflow用户

发布于 2017-11-03 17:28:24

考虑一下:

  1. 您可以获取字典中的所有键并对其进行迭代。例如,for (NSString *key in dictionary) {...}
  2. Given一个密钥,你可以获得匹配值,并测试它本身是否是一个dictionary.
  3. Recursion是你的朋友。您可以编写一个函数,该函数接受当前键路径前缀、字典和可变数组,以将找到的键路径添加到其中。它的实现将涉及(1)、(2)和递归调用。

现在给自己写一些代码。如果你被卡住了,问一个新的问题,包括你的代码,并解释你被卡住的地方。

HTH

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47091271

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档