java - 搜索大量有序字符串

标签 java android

现在,作为我的 Android 应用程序的一部分,我有一个 .csv 文件,其中包含 15,000 行存储在手机的 SD 卡上。每次我的应用程序启动时,它都会将这 15,000 行读入两个并行数组。我对 3 个文件执行此操作,因此总共有 6 个数组,每个数组存储 15,000 个元素。我需要在保持秩序的同时快速搜索这些项目。

我担心如果我按原样保留代码,我将开始耗尽手机内存并导致应用程序崩溃。使用 readline 搜索 csv 文件而不是将整个数组读入数组列表是否会更快,这样我就不会遇到内存问题?有没有更好的方法在维持秩序的同时做到这一点?

SD卡上的内容是以下形式:

New York, test1
New Jersey, test2
Colorado, test3
Arkansas, test4
New York, test5
etc..

最佳答案

我认为更好的解决方案是将它们存储在 SQLite 数据库中,并在查询时使用 ORDER BY,只查询当时需要的数据。

关于java - 搜索大量有序字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13637965/

相关文章:

java - 正则表达式 - Java - 匹配字符串 (012|123|234|345|456|567|678|789|890)

android - 直接链接到应用程序

Android 多部分短信 - 单独接收

java - fragment 中的Android "Only the original thread that created a view hierarchy can touch its views."错误

java - 使用java程序读取Excel文件

java - 如何使服务器将客户端重定向到另一台服务器?

java - 比较新项目的 ASP.NET MVC 和 Grails

Android Social Game 实现 - 数据存储和共享

android - 在 editText 中设置一些空间

android - 异步任务不更新屏幕