这是我的构造函数类
public class selected_item {
private String Items;
public selected_item() {
}
public selected_item(String items) {
this.Items = items;
}
public String getItems() {
return Items;
}
}
我的mainActivity为
db = FirebaseDatabase.getInstance().getReference();
db.child("Category").child(s).addListenerForSingleValueEvent(new ValueEventListener() {
@Override
public void onDataChange(DataSnapshot dataSnapshot)
{
selected_item Items =dataSnapshot.getValue(selected_item.class);
System.out.println(Items);
}
@Override
public void onCancelled(DatabaseError databaseError) {
}
});
我得到的输出是
I/System.out: com.strease.user.strease.selected_item@3945e4f
这不是必需的,也不存在于我的数据库的任何地方。所需的输出应为鞋
请帮我解决这个问题
答案 0 :(得分:2)
您的对象没有toString()
方法,因为Java为您提供了打印方法中对象的引用。
尝试打印项目属性:
System.out.println(Items.getItems());
您还可以覆盖toString()
方法以打印可读的内容:
public class selected_item {
private String Items;
public selected_item() {
}
public selected_item(String items) {
this.Items = items;
}
public String getItems() {
return Items;
}
@Override
public String toString() {
return Items;
}
}
仍然是用户:
System.out.println(Items);