gpt4 book ai didi

java - 如何通过简单的for循环从Firebase Android获取所有子列表

转载 作者:搜寻专家 更新时间:2023-11-01 09:24:34 26 4
gpt4 key购买 nike

下面的代码通过 forEach 循环为我提供了 Firebase 中的所有子项:

final Query query = mDataBaseReference_info_channels.child(getUserDetails().getUserId()).child("channels");

query.addValueEventListener(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
for (DataSnapshot dsp : dataSnapshot.getChildren()) {
DebugLog.d("\n test: " + dsp.toString());
}
}

但我想使用 for 循环并获取最后一个位置并再次触发查询。我不想像下面这样使用代码:

i=0;
for (DataSnapshot dsp : dataSnapshot.getChildren()) {
i++;
if(i==datasnapt.getchildren)
{
//fire a api
}
}

谁有解决办法请给我答案

最佳答案

因为 dataSnapshot.getChildren()返回 Iterable<DataSnapshot> .使用迭代器从集合中获取最后一项:

DataSnapshot lastDataSnapshot = null;
Iterable<DataSnapshot> iterable= dataSnapshot.getChildren();
for (Iterator iterator = iterable.iterator(); iterator.hasNext(); ) {
lastDataSnapshot = iterator.next();
}

lastDataSnapshot是 DataSnapshot 的最后一项。用它来触发下一个 api。

关于java - 如何通过简单的for循环从Firebase Android获取所有子列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51647334/

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