关于集合遍历 问题。。。
- Java code
MovieService ms = new MovieService(this.getBaseContext()); List<Map<String, Object>> typenum = ms.findMovieByRegion("美国"); Log.v("listmap.size===开始执行>", "开始执行。。。。。。"+typenum.size());//这里面得到 4个编号 for (Iterator typeiterator = typenum.iterator(); typeiterator.hasNext();) { Log.v("listmap.size===执行遍历>", "进入遍历。。。。。。"); Object map = typeiterator.next(); Log.v("map===ggggggggggggggg>", ""+map); listmap = FileList.findFile(Environment.getExternalStorageDirectory()+"/Pictures/"+map+".jpg"); Log.v("listmap.isnull===dddddddddd>", ""+listmap); }//这里面 我从数据库中得到的编号 分别为 3 ,8,9,10 在在遍历的时候 打印出来的 map 却不是这几个数 而是com.android.palyer.sql.Movie@40ff4010 这是怎么回事啊?
[解决办法]
你这个输出的是map类型的,
Map map = typeiterator.next();
String str = map.getObject();
[解决办法]
""+listmap
等效于
""+listmap.toString();
对于 File类,toString()的实现不是显示文件名。
要想显示文件名,使用 file.getName()来获取