在我的應用程序中,主要數據集是一個二維char數組(char[][]
),其中一些值可能是非打印字符,甚至是\0
字符。將這個數組存儲在共享的prefs中並在以後檢索它的最快方法是什麼?檢索速度比保存速度更重要。陣列不是特別大,可能不會超過100x100。在共享首選項中存儲char [] []的最快方法
目前,我將其轉換成一個字符串通過簡單地連接所有字符,行逐行,列逐列,並與尺寸一起存儲的字符串(如INT)。
我也考慮過只是串行化數組(writeObject
爲ByteArrayOutputStreram
,然後使用流的toString
方法),但還沒有嘗試過。
其他建議?同樣,儘可能快的檢索(以及char [] []數組的重新創建)是我最關心的問題。
謝謝您的回答,但不幸的是,'喜好StringSet'方法僅適用於Android 3.0起。我的應用程序需要從1.6以上的工作。 – 2012-03-26 09:18:51
好吧,我看到了我的解決方案的弱點。一個小提示:當你關心性能時,使用ArrayList或[SparseArray](http://developer.android.com/reference/android/util/SparseArray.html)而不是HashMap 。 –
damaxxed
2012-03-26 09:32:17
謝謝!我想,雖然我在這個系列中只有3-4件商品,但這不是什麼大問題,但隨着它的規模不斷擴大,我一定會做出改變。 – 2012-03-26 09:34:58