2012-06-10 37 views
1

我想将我的HashMap存储在我的应用程序中,所以每次重新启动应用程序时都可以检索我的HashMap。我已经通过Google看到了很多方法,但在我的情况下,最有效的方法是什么?将hashmap数据存储在应用程序中

+0

高效的时间/空间/两者/其他?当你没有告诉我们时,我们应该怎么知道“你的情况”是什么? –

+0

我的意思是,我只想存储一个HashMap,仅此而已。 –

+0

HashMap是否改变过?即您是否会动态地为其添加值,还是会在整个应用程序的生命周期中保持不变? –

回答

2

如果数据量不够大,您应该使用首选项。把你的HashMap转换成JSON(也许通过gson),然后把它作为一个字符串存储起来。

如果你有很多数据需要快速访问,你可以使用集成的sqlite数据库。

2

如果您使用的是HashMap作为检索常量数据(即HashMap内的值不会改变)的一种手段,它是在你的代码初始化HashMap如下简单:

private static final Map map = new HashMap(); 

static { 
    map.put(...); 
    map.put(...); 
    /* etc... */ 
} 

如果您希望全局访问此信息,则可以创建Application的子类,然后将其初始化。

+0

我想将数据写入磁盘,以便每当我重新启动应用程序时数据都不会丢失。 –

相关问题