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

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}); } }
...全文
242 点赞 收藏 4
写回复
4 条回复
Jinbeen 03月15日
这种代码上来就是一个try
回复 点赞
你这个控件v代码中还没用到,可以先把闪退的log发出来。
回复 点赞
立青_ 03月05日
不想看你这代码,贴日志吧
回复 点赞
lht80s 03月05日
方法里有两个query查出的cursor,但没有一个非空判断,不闪感觉有点对不起空指针
回复 点赞
发动态
发帖子
Android
创建于2009-10-09

4.6w+

社区成员

9.0w+

社区内容

移动平台 Android
社区公告
暂无公告