我正在开发一个Android应用程序,它使用各种Java建模实体列表以及FileInputStream
和FileOutputStream
来存储和加载这些实体。
我的dataManager的平均复杂度为4*O(n^3)
,用于同时更新4个不同数据集的所有条目,其中每个操作在for
上需要3个嵌套ArrayList
,因为对象Palace
包含Apartament
列表,对象Apartament
包含People
由于我的方法,我可以在应用程序中明显放慢速度吗?
效率如何?如果我使用SQLite执行相同的操作?
答案 0 :(得分:0)
在我看来,SQL会提供一些优势。
就效率而言,如果不讨论您持有的数据量,我无法告诉您哪一个更好(文件与数据库)。 2或3条记录与10,000条记录完全不同(甚至没有考虑嵌套级别)。
如果您正在使用文件,则必须手动将所有内容加载到内存中以访问对象,这意味着(大部分时间)完全加载文件并再次完全保存。
数据库允许您仅获取当前所需的信息,并且还允许您仅保存已修改的数据。