这是在此处提出问题的示例:
getValue(String.class) vs getValue().toString();
我已经在我的Firebase表中存储了一个名为“ Integer”的孩子“ Vyear”,看起来像这样
我曾经按如下方式检索它,而该应用程序始终崩溃;
child4.child("Vyear").getValue(String.class);
在阅读了问题和答案之后,我解决了问题,现在我正在使用;
child4.child("Vyear").getValue().toString();
答案 0 :(得分:2)
您的第一个摘录:
child4.child("Vyear").getValue(String.class);
这将从String
中检索Vyear
的值。由于Vyear
存储一个数字值,因此意味着该代码段返回null
。
第二个片段:
child4.child("Vyear").getValue().toString();
这将返回Vyear
中基础类型的值。因此,如果Vyear
有一个值,它将返回一个数字(long
或Long
)。调用toString()
,即可将数字作为字符串。
请注意,如果Vyear
不存在,第二个代码段将在调用NullPointerException
时发出toString()
。