在我的Android应用程序中使用哈希表或SQLite

时间:2010-09-29 01:58:07

标签: android hashtable sqlite

最初我在我的android应用程序中使用hashtable。我喜欢哈希表的关键点是能够存储复杂的项目,例如:coordinate - > float [2],velocity - > float [2]。

但是从许多示例中,在android中使用SQLlite表似乎更有效,但它可能只存储rowID定义的一行中的所有值。

所有人都可以在这个问题上给我启发吗?使用哈希表还是SQL lite更可行? 如果退出应用程序,哈希表是否可以保留数据?

2 个答案:

答案 0 :(得分:1)

  
    

如果退出应用程序,哈希表是否可以保留数据?

  

不,当然没有。当您的应用运行时,HashTable实例将存在,但只要您关闭应用,它就会被删除。现在,把你的手放在心里,回答这些问题:

  • 您需要保存多少数据?
  • 您多久使用一次这些数据?
  • 数据应该持续多长时间?

那就是说,让我们谈谈persist data的更多方法:

  • 共享首选项如果您想要一种简单的方法来保存简单的数据结构,这就是要走的路。实际上,共享首选项允许您将数据保存在key<->value架构中,这与HashTable非常相似。
  • SQlite 这种方法非常有用,但如果不保存复杂的数据结构则没有必要。如果你只是想保存一些值,那么使用SQLite就像用大炮杀死一只苍蝇。
  • 有更多方法可以保留数据,我认为这些方法不适用于您想要做的事情。

所以,乍一看,我建议你看一下共享偏好的例子,这似乎是你的场景的理想选择。

答案 1 :(得分:1)

SQLite并不比哈希表更有效。你真的在比较两个完全不同的想法。 SQLite用于持久存储,哈希表用于易失性存储。您的应用需要什么?