2011-03-31 34 views
1

我注意到,對於NSMutableDictionary和NSMutableArray而言,方法'hashcode'都讓我把hashvalue作爲鍵的數量,而不管NSMutableDictionary的值和NSMutableArray情況下的對象數量。如何監視NSMutableArray或NSMutableDictionary中所做的更改?

基本上,我想檢測NSMutableDictionary中的更改。我的字典包含鍵/值對作爲字符串/ NSMutableArray。如果某個項目的任何值被添加/刪除,我都會檢測字典中的更改。

如果我去計算我的字典中的值爲NSMutableArray的哈希值,這是不可行的,因爲還有可能會添加不同的值並刪除現有的值,只是簡單地給出項目數量保持不變,但散列應該不同。

哪一種處理字典變化的最好方法是?

任何人都可以請幫忙嗎?

+0

你就不能繼承的字典類並重寫添加/刪除方法呢? – 2011-03-31 06:41:27

+0

嗨克里斯,你能解釋一下嗎? – neha 2011-03-31 06:57:31

+1

字典是一個[class cluster](http://www.mikeash.com/pyblog/friday-qa-2010-03-12-subclassing-class-clusters.html),因此它不容易被分類。 – zoul 2011-03-31 06:58:41

回答

1

您可以保留原來的詞典中的測試,如果它等於新

isEqualToDictionary:

返回一個布爾 值,表示接收字典 的 內容是否相等給予另一個 給出字典的內容。

- (BOOL)isEqualToDictionary:(NSDictionary*)otherDictionary 

Docs here

相關問題