2013-11-04 26 views
0

的對象:生成一個NSMutableDictionary與我怎麼會生成以下格式的<code>NSMutableDictionary</code>不同格式

{ 
sitedetails = { 
    currency; 
    ere =   { 
     price =    { 
      test =     { 
           gte = 100; 
            }; 
          }; 
        }; 
       }; 
} 

sitedetails是關鍵和貨幣(NSString)和ereNSMutableDictionary有自己的對象)的對象這個NSMutableDictionary

NSMutableDictionary *dict1 = ;[NSMutableDictionary alloc] init]; 
[dict1 setObject:@"currency" forKey:@"sitedetails"]; 
NSMutableDictionary *dict2 = ;[NSMutableDictionary alloc] init]; 
[dict2 setObject:ereDict forKey:@"sitedetails"]; 
[dict1 addEntriesFromDictionary:dict2]; 

這並沒有讓我在添加字符串值dict1。任何想法,我要去哪裏錯了?

{ 
sitedetails = { 
    ere =  { 
     price =  { 
      test = { 
       gte = 100; 
         }; 
        }; 
        }; 
       }; 
} 

回答

2

因爲dict1和dict2有關鍵'sitedetails'。鍵應該在字典中是唯一的。 從NSMutableDictionary reference manual

如果兩個字典包含相同的密鑰,接收字典的 該鍵以前的值對象發送釋放消息, 新的值對象取代它的位置。

+0

如果dict2有一個虛擬鍵,我如何將它添加到dict1,使它有兩個對象(一個字符串和字典) –

+1

看起來你需要在字典中多一個級別。似乎沒有多少意義,「關鍵字」的「關鍵字」具有「貨幣」的_值。 –

+0

使用NSMutableDictionary你不幸的**不能**有一個_dummy_鍵。考慮另一個數據結構,如果有非唯一的密鑰是必要的。 –