以下代码可让我获取dataSnapshot
内的子女数量。
public void onDataChange(DataSnapshot dataSnapshot) {
long numberChildren = dataSnapshot.getChildrenCount();
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
我的问题是如何获得独特子女的数量?像这样的东西可以完美地运作:dataSnapshot.getUniqueChildrenCount()
答案 0 :(得分:1)
不使用set的方法:
ArrayList<String> values=new ArrayList<String>();
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot childDataSnapshot : dataSnapshot.getChildren()) {
String children = childDataSnapshot.getValue(String.class);
if (!values.contains(children)) {
values.add(newValue);
}
}
使用set:
的方法Set<String> set = new HashSet<String>();
@Override
public void onDataChange(DataSnapshot dataSnapshot) {
for (DataSnapshot childDataSnapshot : dataSnapshot.getChildren()) {
String children = childDataSnapshot.getValue(String.class);
set.add(children);
}