Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 两种nsmutabledictionary的比较_Objective C_Cocoa_Macos - Fatal编程技术网

Objective c 两种nsmutabledictionary的比较

Objective c 两种nsmutabledictionary的比较,objective-c,cocoa,macos,Objective C,Cocoa,Macos,各位计算机人好 我自己也可以这样做,但我只是想知道是否有一种更有效的方法我没有想到: 我有两本词典。让我们以这些为例: Dictionary 'Madrid' Bob : 54 Thomas : 32 Frank : 20 Dictionary 'Barcelona' Bob : 1100 Thomas : 32 Ed : 55 Frank : 20 我想从比较这两个方面得到的是: 事实上,两个字典中Bob的值不同 弗兰克在巴塞罗那很

各位计算机人好

我自己也可以这样做,但我只是想知道是否有一种更有效的方法我没有想到:

我有两本词典。让我们以这些为例:

Dictionary 'Madrid'

 Bob     : 54
 Thomas  : 32
 Frank   : 20


Dictionary 'Barcelona'

 Bob     : 1100
 Thomas  : 32
 Ed      : 55
 Frank   : 20
我想从比较这两个方面得到的是:

  • 事实上,两个字典中Bob的值不同
  • 弗兰克在巴塞罗那很有价值,但在马德里根本没有
  • 这是为了监视一种时间序列,以查看从一个迭代到下一个迭代是否发生了任何活动

    显然,这应该在目标C中处理

    对最有效的方法有什么看法


    非常感谢

    最好的方法可能是在其中一个字典中进行简单的循环,然后检查是否遗漏了另一个字典中的任何键。由于涉及到词典,因此Objective-C只支持O(N)

    isEqualToDictionary: 用法:

    if([(NSDictionary*)可变字典1 isEqualToDictionary:(NSDictionary*)可变字典2]){