2 aaronfae AaronFae 于 2013.07.27 03:59 提问

请问这段代码是什么意思?
ArrayList<Map<String, Object>> nameDate = new ArrayList<Map<String, Object>>();
for (int i = 0; i < name.length; i++) {
Map<String, Object> item = new HashMap<String, Object>();
        item.put("name", name[i]);
        item.put("img", img[i]);
        nameDate.add(item);
    }

2个回答

zhangjinhe921
zhangjinhe921   2013.07.27 13:37
已采纳

第一句:声明动态数组arraylist对象 并为动态数组取名为:namedate

第二句:for循环 i的值小于动态数组的长度就进行i++

第三句:声明map对象并进行取名

第四、五句:在map里分别放了 name和imp

第六句:将item这个对象放在了动态数组里

AaronFae
AaronFae 我觉得这跟二维数组有点像,能这么想么?
4 年多之前 回复
AaronFae
AaronFae 把Map<String, Object> item = new HashMap<String, Object>();放到for循环里面,为什么不会把数据覆盖?
4 年多之前 回复
Jave_
Jave_   2013.07.27 09:32

这个一般用于设置Adapter的时候用到,单独看HashMap其实就是对应的一个item的数据,一个imageview和一个textview,而用list就是整个ListView或者GridView等的所有item

Jave_
Jave_ 会覆盖, nameDate.add(item);这句加入到整个ArrayList里是最终需要的,list里的map是不同的
4 年多之前 回复
AaronFae
AaronFae 我觉得这跟二维数组有点像,能这么想么?
4 年多之前 回复
AaronFae
AaronFae 把Map<String, Object> item = new HashMap<String, Object>();放到for循环里面,为什么不会把数据覆盖?
4 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!