英文:
Is there any query to find the sum of quantity of child having the same name in Firebase Database(Android Studio)?
问题
以下是翻译好的代码部分:
final Query query2 = billdata.orderByChild("name");
query2.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
int sum = 0;
for (DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()) {
int total1 = Integer.parseInt(String.valueOf(dataSnapshot1.child("qty").getValue()));
sum = sum + total1;
}
Toast.makeText(this, "合计:" + sum, Toast.LENGTH_LONG).show();
}
});
英文:
Query to find the sum of the quantity of item having the same name...enter image description here
final Query query2 = billdata.orderByChild ( "name" );
query2.addListenerForSingleValueEvent ( new ValueEventListener ()
{
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot)
{
for ( DataSnapshot dataSnapshot1 : dataSnapshot.getChildren())
{
int total1 = Integer.parseInt ( String.valueOf ( dataSnapshot1.child ( "qty" ).getValue () ) );
int sum=0;
sum=sum+total1;
Toast.makeText (this,"Whole Total"+sum,Toast.LENGTH_LONG ).show ();
答案1
得分: 0
以下是翻译好的内容:
没有特定的查询来计算子项的总和,您想要像这样做:
// 像这样在全局范围内声明一个 int 变量
int globalsum = 0;
final Query query2 = billdata.orderByChild("name");
query2.addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot) {
int sum = 0;
for (DataSnapshot dataSnapshot1 : dataSnapshot.getChildren()) {
int total1 = Integer.parseInt(String.valueOf(dataSnapshot1.child("qty").getValue()));
sum = sum + total1;
globalsum = sum;
Toast.makeText(this, "整体总计" + sum, Toast.LENGTH_LONG).show();
}
}
// 其他监听器方法...
});
英文:
There are no specific query for calculating the sum of the child, you want to do like this
// declare an int variable in global like this
int globalsum=0;
final Query query2 = billdata.orderByChild ( "name" );
query2.addListenerForSingleValueEvent ( new ValueEventListener ()
{
@Override
public void onDataChange(@NonNull DataSnapshot dataSnapshot)
{
int sum=0;
for ( DataSnapshot dataSnapshot1 : dataSnapshot.getChildren())
{
int total1 = Integer.parseInt ( String.valueOf ( dataSnapshot1.child ( "qty" ).getValue () ) );
sum=sum+total1;
globalsum=sum;
Toast.makeText (this,"Whole Total"+sum,Toast.LENGTH_LONG ).show ();
专注分享java语言的经验与见解,让所有开发者获益!
评论