zoukankan      html  css  js  c++  java
  • Android数据库游标封装

    public  List<Map<String,Object>> cursorToList(Cursor cursor){
            List<Map<String,Object>> maps=new ArrayList<Map<String,Object>>();
    
            //返回游标中字段组成的集合
            String[] colunmNames= cursor.getColumnNames();
            System.out.println("columnNames="+ Arrays.toString(colunmNames));
    
            //while循环转一圈,得到游标中一行的数据,如果游标中数据取完了则while退出
            while (cursor.moveToNext()){
                Map<String,Object> map=new HashMap<String,Object>();
                //得到游标中每一列中的数据
                int len=colunmNames.length;//返回数组的大小
                for(int i=0;i<len;i++){
                    //返回指定列的数据类型对应的整数值
                   int dataType= cursor.getType(i);
    
                    Object value=null;
                    switch (dataType){
                        //说明当前列是String数据类型
                        case Cursor.FIELD_TYPE_STRING:
                            value=cursor.getString(i);
                            break;
                        //说明当前列是Integer数据类型
                        case Cursor.FIELD_TYPE_INTEGER:
                            value=cursor.getInt(i);
                            break;
                        case Cursor.FIELD_TYPE_FLOAT:
                            value=cursor.getFloat(i);
                            break;
                        case Cursor.FIELD_TYPE_BLOB:
                            value=cursor.getBlob(i);
                            break;
                        case Cursor.FIELD_TYPE_NULL:
                            value=null;
                            break;
                    }
    
                    //返回当前列的列名
                    String key=colunmNames[i];
                    map.put(key,value);
                }
              maps.add(map); } return maps; }

      

  • 相关阅读:
    BZOJ2219数论之神——BSGS+中国剩余定理+原根与指标+欧拉定理+exgcd
    Luogu 3690 Link Cut Tree
    CF1009F Dominant Indices
    CF600E Lomsat gelral
    bzoj 4303 数列
    CF1114F Please, another Queries on Array?
    CF1114B Yet Another Array Partitioning Task
    bzoj 1858 序列操作
    bzoj 4852 炸弹攻击
    bzoj 3564 信号增幅仪
  • 原文地址:https://www.cnblogs.com/qcgAd/p/5098096.html
Copyright © 2011-2022 走看看