public List<Map<String, Object>> findMovieByRegion(String region){  
      
            List<Map<String, Object>> movieList = new ArrayList<Map<String, Object>>();  
            SQLiteDatabase db = dbHelper.getReadableDatabase();  
            Cursor cursor = db.rawQuery("select num from Online_movie where region=?", new String[]{region});  
            while(cursor.moveToNext()){  
                  
                int aa = cursor.getInt(cursor.getColumnIndex("num"));  
                HashMap<String, Object> map = new HashMap<String, Object>();  
                map.put("aaa", aa);  
                System.out.println(map);  
                movieList.add(map);  
            }  
            return movieList;  
        }  
      
    //______________________________________________  
    下面是 遍历上面 数据库中的 集合  
    MovieService ms = new MovieService(this.getBaseContext());  
              
            List<Map<String,Object>> typenum =  ms.findMovieByRegion("美国");  
              
            for (Iterator<Map<String, Object>> typeiterator = typenum.iterator(); typeiterator.hasNext();) {  
                  
                Object num = typeiterator.next();  
    //这里打印的 num 是{aaa=10},{aaa=9},{aaa=3}可是 我只想得到  10,9,3这几个数字 因为 有花括号的话 组成的路径就是错误的    
                Log.v("num===ggggggggggggggg>", ""+num);  
                  
                listmap = FileList.findFile(Environment.getExternalStorageDirectory()+"/Pictures/"+num+".jpg");  
                  
            }  

解决方案 »

  1.   

    不知道你的内容是怎么存放的?你的Map里是aaa为键,数字为值吗?
      

  2.   

    每个Map里面只有一个键值对是吗?如果是的话就这样
            for (Iterator<Map<String, Object>> typeiterator = typenum.iterator(); typeiterator.hasNext();) {                    
                    Map<String,Object> map=(HashMap<String,Object>)typeiterator.next();  
                       Log.v("num===ggggggggggggggg>", map.values().get(0)+"");  
                      
                    listmap = FileList.findFile(Environment.getExternalStorageDirectory()+"/Pictures/"+map.values().get(0)+".jpg");  
                      
                }  
      

  3.   


    呵呵谢谢了已经解决了应该这样的:
    MovieService ms = new MovieService(this.getBaseContext());

    List<Map<String,Object>> typenum =  ms.findMovieByRegion("美国");
    for (Iterator<Map<String, Object>> typeiterator = typenum.iterator(); typeiterator.hasNext();) {
    //这这应该写成  Map 不能用Object 下面利用 num 得到 key 就可以了。。
    Map num = typeiterator.next();
    Integer numint = (Integer) num.get("aaa");


    listmap = FileList.findFile(Environment.getExternalStorageDirectory()+"/Pictures/"+numint+".jpg");

    }