【问题标题】:Search city name from large list stored in file从存储在文件中的大列表中搜索城市名称
【发布时间】:2017-06-15 11:59:31
【问题描述】:

我想实现一个搜索栏,其中有一个大文件,其中包含所有城市名称,数据以以下格式存储在文件中。

["Mumbai","Delhi","Bengaluru",...upto 1500]

为这些类型的数据实现搜索栏的最佳方式是什么?

我应该在列表中加载所有城市名称吗?我应该将所有城市名称存储在本地数据库中吗?

【问题讨论】:

    标签: android performance searchbar


    【解决方案1】:

    要在线搜索还是离线搜索取决于您的要求。如果是离线搜索,您必须将这些记录存储在本地数据库中,否则实施在线搜索会很有效。

    或者您可以通过第一次获取 1500 条记录作为单独的进程并将其保存在本地来使用这两种方式。

    对于搜索栏,您可以使用列表作为基础,但还有一些其他选项。通常,您应该为工作使用正确的工具。如果您不想重复,请使用 Set(如果您想要排序,则使用 SortedSet,或 LinkedHashSet

    查看when to use Set vs. Collection?

    【讨论】:

    • 我本地文件有数据,不应该直接搜索吗?如果是,请建议最好的最佳方法。
    • 如果数据是json文件(根据您的示例数据),您可能需要先解析json然后将其保存到DB。
    【解决方案2】:

    尝试对项目使用 RecyclerView 并将这些字符串放在一个 ArrayList 中。 我认为您应该在线或离线使用数据库。 第一次尝试使用 SharedPreference 将城市名称插入数据库。

    【讨论】:

    • 你能提供一些代码或方法来从文件中读取大列表并将它们存储在本地数据库中吗?
    猜你喜欢
    • 2012-03-07
    • 2017-10-03
    • 1970-01-01
    • 2012-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-02
    • 1970-01-01
    相关资源
    最近更新 更多