在过去的几天里,我一直在努力解决以下问题
我需要在字典的字典深处设置一个键和一个值。我知道要设置键的字典的键,但我不知道如何到达那里。密钥存储在一个数组中。
说,我有一个包含以下键的字典,每个键的值是另一个字典。
- myDict
- A
- A
- A
- B
- B
- A
- B
- B
- A
- A
- B
- B
- A
- B
我还有以下数组:
[A, A, B]
这意味着,我想在 A->A->B 处为字典中的键设置一个值。这等于以下内容:
[[[[myDict objectForKey:@"A"] objectForKey:@"A"] objectForKey@"B"] setValue:myValue forKey:myKey]
有谁知道我可以实现这一目标的方法?我想我应该保留对字典的引用,遍历数组中的对象并转到字典中的“下一级”并保留对此的引用,当到达数组中的最后一个对象时,设置键的值。我的问题是,我不知道如何解决这个问题。为了保持对字典的引用,当我进入下一个级别时,我需要初始化一个新字典,对吗?这导致我创建一个只包含当前级别的对象的新字典,因此我最终不会为原始字典中的键设置值。
任何代码示例或伪代码将不胜感激。