我遇到的:Attempt to invoke interface method ‘java.lang.Object[] java.util.Collection.toArray()’ on a null object reference 的一种原因
不扯淡,直接诉苦
- 今天遇到了上述的错误,经过了九牛二狗之力才发现上述错误的原因。
我的情景是这样的
//第一步,这时候liveBeanList里面并没有数据
private List<LiveDetailBean.LiveBean> liveBeanList=new ArrayList<>();
//使用liveBeanList给recyclerView设置适配器
recyclerView.setAdapter(liveBeanList);
//请求网络数据,得到一个List netList,然后
liveBeanList.addAll(netList);
//然后就出现上面的错误了,经过查找,原来是因为从网络上加载来的netList是空的,所以出现了上面的错误。(另外,如果你这时候adapter.notifyDataSetChanged(),还会出现类似的错误)
总结:在加载网络的List数据时候,在将数据加入到本地List中的时候,一定要先判断网络数据是不是为空,不为空再加到本地List里面。