Изменение NSMutableDictionary путем ключа
У меня есть NSDictionary
с вложенными NSDictionary/NSArray
(Генерируется с помощью JSON).
Мне нужно удалить объекты в нескольких местах в соответствии с некоторой логикой, навязанной мне.
Например, допустим, что словарь имеет такую структуру, как:
{
"Array1" : [
{
"InnerArray1" : [
{
"some conditional field" : Evaluate this ...
}
],
"More Properties : ....
}
],
"Array2" : {
... some complex inner structure
{
// some inner object to remove according to "evaluate condition"
}
}
}
Когда я повторяюArray1.InnerArray1...
"и оценить некоторые условия, чтобы true
Мне нужно удалить объекты в непересекающемся месте.
В идеале я мог бы сделать что-то вроде
foreach item in Array1.InnerArray1 {
if item evaluates to true {
// evaluate the disjoint location...
remove Array2.....InnerObject(s) where ConditionField == true
}
}
В настоящее время очень неудобно повторять внутренние объекты и изменять их на одном проходе (и очень трудно для чтения).
Учитывая, что я создал глубокую изменчивую копию всего этого дерева данных, возможно ли удалить вложенные объекты, используя kvc
или другой механизм без вложенных итераций?