2011-05-25 52 views
0
NSData* myData = [NSData dataWithBytes:&pEvent length:sizeof(pEvent)]; 
    wTimerId = 99; 

    [m_cAppIdMap setObject:myData forKey:[NSNumber numberWithUnsignedShort:wTimerId]]; 
    wTimerId = 96; 
    [m_cAppIdMap setObject:myData forKey:[NSNumber numberWithUnsignedShort:wTimerId]]; 
    wTimerId = 97; 
    [m_cAppIdMap setObject:myData forKey:[NSNumber numberWithUnsignedShort:wTimerId]]; 
    wTimerId = 98; 
    [m_cAppIdMap setObject:myData forKey:[NSNumber numberWithUnsignedShort:wTimerId]]; 
    wTimerId = 95; 
    [m_cAppIdMap setObject:myData forKey:[NSNumber numberWithUnsignedShort:wTimerId]]; 

我正在以99,96,97,98,95的順序存儲密鑰值的數據。但它被存儲爲以無序形式獲取字典密鑰和值

{ 
    98 = <b0c71000 01000000>; 
    97 = <b0c71000 01000000>; 
    96 = <b0c71000 01000000>; 
    99 = <b0c71000 01000000>; 
    95 = <b0c71000 01000000>; 
} 

爲什麼它so.Is有什麼辦法來安排,其中最先被存儲方式的字典。

回答

3

詞典本質上是無序的。如果您想訂購,請使用數組。

如果您想要基於順序和鍵的查找,請同時存儲數組和字典;一個用於保存順序,另一個用於保存基於密鑰的查找。

只要保持同步。

相關問題