2011-09-19 61 views

回答

14

NSMutableDictionary繼承自NSDictionary。所以,writeToFile應該可用於這兩個類。

7

的NSMutableDictionary是NSDictionary中的一個子類,所以將writeToFile方法應該適用於你的對象,而無需做任何鑄造或轉換。

3

NSMutableDictionary is NSDictionary,因爲它是一個子類。通常,子類與其超類的關係稱爲:「是a」。

13

對於那些來這裏真正尋找的轉換從的NSMutableDictionary到的NSDictionary:

NSMutableDictionary *mutableDict = [[[NSDictionary alloc] initWithObjectsAndKeys: 
           @"value", @"key"] mutableCopy]; 

NSDictionary *dict = [NSDictionary dictionaryWithDictionary:mutableDict]; //there you have it 
1

爲了解決實際問題的標題,而不是內容(因爲我搜索了這個Q)實際上你可以依靠copyWithZone:得到下到一個不可變的詞典。

NSMutableDictionary *mutableDict = [[NSMutableDictionary alloc] init]; 
mutableDict[@"key"] = @"value"; 
NSDictionary *immutableDict = [mutableDict copy]; 
相關問題