gpt4 book ai didi

java - 如何快速得到搜索结果?

转载 作者:行者123 更新时间:2023-11-30 00:14:06 27 4
gpt4 key购买 nike

我在firebase数据库中有一个对象数据库,我需要一个函数来返回一些搜索结果;如果我收到一个字符串来搜索对象的“标题”方面的某个子字符串,我需要返回满足该条件的所有对象的列表。我目前正在详尽地做这件事,即检查每本书的字段并将其添加到列表中。

不幸的是,这种方法的速度非常糟糕:随着列表变大,生成这个列表所花费的时间大得令人无法接受。然而,一个可接受的解决方案是一次返回一个对象,以便动态地增加列表。我突然想到,正常的搜索功能似乎使用了这个,视频/音频缓冲也必须连续获取该数据。

但我不知道如何在 Android 上用 Java 实现它。我什至没有遇到过类似的事情,但我相信有办法做到这一点。有什么建议吗?

**编辑:** 所以具体来说,我有一个 adroid 应用程序,我需要在上面编写一个函数供我的合作伙伴使用。此函数必须收集 Book 数据对象并返回它们。我目前在数据库中只有 32 本书,所以我认为我遇到的任何时间下降都是由于从 firebase 获取数据造成的。一定有某种方法可以一次生成一本书,以减少用户感知到的等待时间,但我不知道如何处理这个问题。

最佳答案

您可以使用Firebase sdk 提供的orderByChild 方法。这是示例代码:

  titlesDatabaseReference.orderByChild("title").equalTo("the title you search for").
addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
//Do whatever you want with the snapshot
}
}
}
});

您还可以使用 limitToFirst 和 limitToLast 方法来限制搜索结果。

关于java - 如何快速得到搜索结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47604983/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com