2015-03-13 38 views
1

我有一個班,使用NSMutableDictionary。該字典包含40-60個自定義類「appStrings」的對象。現在每次我使用這個類時,我只是初始化調用我的initDictionary方法的字典,並添加所有的對象和鍵。改爲初始化NSDictionary一次並使用NSKeyedArchiver將文件保存到文件或每次調用init方法會更好還是更快?就編寫代碼而言,它沒有什麼區別,即使我保存它並且再也不會初始化,我必須在某個時刻初始化字典。但是在性能方面呢?NSMutable字典,每次使用時都要初始化,還是保存並加載到文件中?

編輯:對象

appMessage *a= [[miaoMEMessage alloc] initWithCode:@"a" replies: [NSArray arrayWithObjects:@"j", @"k", nil] english:@"Hi!" andChineseTrad:@"嗨!"]; 

回答

1

一般的例子總是更快地創建對象,然後從磁盤加載它們。 在你的例子中,在代碼中創建字典然後從磁盤加載它(它將不得不從磁盤創建相同的對象加載)。

+0

字典在初始化後存儲在屬性中。然而,只有在需要時纔會創建該對象,因爲我正在使用一些視圖控制器。 – Kex 2015-03-13 17:13:22

+0

那麼如果你沒有任何創建字典內容的繁重代碼,在代碼中創建代碼然後從磁盤加載它的速度會更快,但我的猜測是,如果字典內容是輕量級的,你將不會注意到應用程序中的任何差異 – 2015-03-13 17:15:46

+0

什麼是重碼?我用我正在使用的對象的示例編輯了我的問題。只是包含3個NSString和一個NSArray的對象。字典將有大約40-60這些。 – Kex 2015-03-13 17:19:36

相關問題