永发信息网

list转换成MAP 求各位大神啊!!!

答案:4  悬赏:60  手机版
解决时间 2021-04-28 19:38
list转换成MAP 求各位大神啊!!!
最佳答案
List和Map是完全不同的两个数据结构,怎么直接转化啊,简单地说:List的结构是:
List[ object1, object2, object3,....]
而Map的结构是:
Map[ ,,,.....]
List就是保存了一组object,而Map不光保存object,还给每个object添加了一个唯一的Key用来寻找这个object。所以才有数据结构:List 和 Map;
你这里想要返回map,
需要把这段代码修改了:
return usersRoleRelationService.findRole(usersConditionMap, start, 20).toArray();
} catch (BusinessException exception) {
return new Object[] {};
}
修改成先遍历list,生成map,然后return;
Object[] objs=usersRoleRelationService.findRole(usersConditionMap, start, 20).toArray();
Map returnMap=new HashMap();
for(Object obj : objs){
Object key=....; //这里的key是你用来查找相应object的key,可以使Integer,Double等,也可以是任意一个object,key是唯一的。
returnMap.put(key,obj);
}
return returnMap;
catch (BusinessException exception) {
return null;
}

还有,你的方法是返回GridDataProvider 这样一个东西,你返回map肯定不对啥。
全部回答
  • 1楼网友:走死在岁月里
  • 2021-04-28 17:19
guw
213
  • 2楼网友:山河有幸埋战骨
  • 2021-04-28 17:01
简单说:比如你的List是一个SQL语句得来的如select ID as id,NAME as name .... from Table_1 where Table_1.ID=?? 的话 返回的是一个List ;List a=new ArrayList();
你可以
List a;
Iterator it = a.iterator();
while(it.hasNext()){
Map map = (Map) it.next();
String n=(String)map.get("name");//取出NAME了
}这样 List中的值 可以放到Map里,可以用循环的方法取出值,如上面注释部分,写的可能不太清楚
  • 3楼网友:摆渡翁
  • 2021-04-28 16:48
jxkhd
682
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯