安卓开发用这个为什么会出错?

qq_28484955 2021-03-04 08:04:51
下面这个按钮事件为什么点击会闪退呢? public void ptsanmjs(View v) { ContentValues Values=new ContentValues(); ArrayList<String> a=new ArrayList<>(); ArrayList<String> b=new ArrayList<>(); Cursor cur= db.query("kaijianghaoma", null, "haoma", new String[]{}, null, null, "qihao asc"); Cursor shuju=ptsanm.query("putongsanma", null, "putong3haoma", new String[]{}, null, null, null); while (shuju.moveToNext()) { int name=shuju.getColumnIndex("putong3haoma"); String str=shuju.getString(name); b.add(str); } while (cur.moveToNext()) { int cname=cur.getColumnIndex("haoma"); String st=cur.getString(cname); a.add(st);} ArrayList<Integer> e = new ArrayList<Integer>(); for (String s1 : b) { int cnt = 0; int cnt2=0; List list1 = new ArrayList<String>(Arrays.asList(s1.split(","))); for (String s2 : a) { List list2 = new ArrayList<String>(Arrays.asList(s2.split(","))); List list3 = new ArrayList<String>(list1); list3.retainAll(list2); if (list3.size() == 0) { cnt++; } else { cnt = 0; } if (cnt > cnt2) { cnt2 = cnt; e.add(cnt2); } } int f=0; for (int i=0;i < e.size();i++) { f += e.get(i); } int g=f / e.size(); Values.put("putong3zdpingjun", g); Values.put("putong3zuida", cnt2); Values.put("putong3dangqian", cnt); ptsanm.update("putongsanma", Values, "putong3haoma=?", new String[]{s1}); } }
...全文
281 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
肖子理 2021-03-15
  • 打赏
  • 举报
回复
这种代码上来就是一个try
不会写代码的猴子 版主 2021-03-05
  • 打赏
  • 举报
回复
你这个控件v代码中还没用到,可以先把闪退的log发出来。
立青_ 中级 2021-03-05
  • 打赏
  • 举报
回复
不想看你这代码,贴日志吧
lht80s 2021-03-05
  • 打赏
  • 举报
回复
方法里有两个query查出的cursor,但没有一个非空判断,不闪感觉有点对不起空指针

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧