【发布时间】:2017-06-08 11:00:01
【问题描述】:
我想使用发票号码进行搜索,但在发票中出现错误,无法解决。这是我的过滤方法&错误是:
java.lang.NullPointerException:尝试在空对象引用上调用虚拟方法“java.lang.String java.lang.String.toLowerCase(java.util.Locale)”
public void filter(String charText) {
charText = charText.toLowerCase(Locale.getDefault());
billmod.clear();
if (charText.length() == 0) {
billmod.addAll(arraylist);
} else {
for (BillModel st : arraylist) {
if (st.getBill_tableno().toLowerCase(Locale.getDefault()).contains(charText)) {
billmod.add(st);
}
else if(st.getBill_date().toLowerCase(Locale.getDefault()).contains(charText)) {
billmod.add(st);
} else if(st.getBill_amount().toLowerCase(Locale.getDefault()).contains(charText)) {
billmod.add(st);
}
else if(st.getIncvoice_no().toLowerCase(Locale.getDefault()).contains(charText)) {
billmod.add(st);
}
}
}
notifyDataSetChanged();
}
【问题讨论】:
-
你是如何设置值或数组列表的? (st.getBill_tableno() 返回 null。请检查值是否正确保存到 arraylist
标签: java android listview firebase firebase-realtime-database