4

我正在 Android 上开发一个应用程序,它将从大量引用中随机挑选并显示鼓舞人心的引用(或诗句)。在 Android 上,我可以在平面文件和 SQLite 数据库之间进行选择。

该应用程序应满足以下条件:

  1. 可扩展到 10^6 引文和/或诗句

  2. 速度非常快(即检索并显示报价,只需按一下按钮即可)

  3. 能够从外部来源加载新报价(以我尚未决定的格式)

我必须使用什么数据格式?谢谢。

4

1 回答 1

4

我会使用一个非常简单的数据库,单表:

Quotes
ID          sequential integer PK
Quote       text/string

使用可能的“已查看”位字段,您可以对其进行更新以防止重复。生成一个随机值并从表中选择该行,将其标记为已查看并完成。

平面文件的问题是从文件中间快速查找和读取引用。这就是数据库做得好的地方。同样,对于“平面”文件,您将在文件行末尾浪费大量空间。

此外,如果您可以加载新报价,为什么要在任何时候填充 10^6?只需加载足够的内容以使应用程序继续运行并按顺序浏览它们,删除查看过的内容并加载新的内容。这种方法需要您跟踪最后加载的报价,因此您总是在加载新报价。

于 2009-10-14T12:24:15.923 回答