我正在编写一个包含项目列表及其信息的应用程序。当用户打开应用程序时,他们会看到列表,当他们选择特定项目时,他们将获得有关该项目的所有信息。
现在我的方法是将数据存储在java源文件中的多维数组中。当我推送新的更新时,我可能会在java源文件中添加新项(因此数组会变大)。我想知道这是不是最好的方法。我试着在互联网上查找有关阵列和数据库的相关信息,但我似乎找不到我需要的信息。对我有什么建议吗?
另外,如果将来我为用户创建一个功能,将自己的项目添加到列表中,会产生什么影响?
答案 0 :(得分:1)
如果用户应该能够更新它,如果你应该能够动态更新它(例如从互联网更新),那么数据库是必须的。
如果该数据是静态的,除非您更新应用程序,否则不会更改,您可以将其存储在代码中或更好地存储在文件中(您可以以JSON格式存储以便于阅读和解析)
答案 1 :(得分:0)
如果使用数组,当用户重新启动时,用户新添加的项目将会消失。
答案 2 :(得分:0)
您可以使用直接存储在手机上的SQLite数据库(例如SD卡)。
答案 3 :(得分:0)
可以找到存储选项及其常用内容的分析here。我个人建议使用SQLite数据库。
答案 4 :(得分:0)
数据库适用于永久数据,但如果不真正需要写入磁盘,则可能会产生瓶颈。
我正在重构一个App,不再使用SQLite。我一次插入大量(10,000-100,000)新行,看起来根据状态的日志反馈需要一个小时。当我将它保存在内存中时,它会在大约5秒内完成加载。