我现在有两个List,比如成绩(cj)和学生(xs)
其中cj表里有xs表的对象;
现在我想用map,遍历这两个List, (可以用学号比较),如果xs表有这个学生,cj表没有,就在cj表创建添加这个学生,如果有xs表有这个学生,cj表也有,就给他覆盖掉。
求带解释的代码!
java map解释与代码
答案:2 悬赏:30
解决时间 2021-03-12 19:14
- 提问者网友:芷芹
- 2021-03-12 11:21
最佳答案
- 二级知识专家网友:如果这是命
- 2021-03-12 11:48
Map dataMap = new HashMap();
for(int i=0;i
dataMap.put(xsList.get(i).学号, xsList.get(i));
}
for(int i=0;i
dataMap.put(cjList.get(i).学号, cjList.get(i));
}
得到的dataMap就是需要插入的数据,不过以前的数据需要先删再插(而且前提是xsList和cjList泛型得相同)。
话说如果不用map还可以用一个方法:
// 成绩表的学号List
List cjNum = new ArrayList();
for(int i=0;i
cjNum.add(cjList.get(i).学号);
}
for(int i=0;i
// 学生表的学号在成绩表里存在
if(cjNum.contains(xsList.get(i).学号)){
覆盖
}else{
// 学生表的学号在成绩表里不存在
在cj表创建添加这个学生
}
}
for(int i=0;i
}
for(int i=0;i
}
得到的dataMap就是需要插入的数据,不过以前的数据需要先删再插(而且前提是xsList和cjList泛型得相同)。
话说如果不用map还可以用一个方法:
// 成绩表的学号List
List
for(int i=0;i
}
for(int i=0;i
if(cjNum.contains(xsList.get(i).学号)){
覆盖
}else{
// 学生表的学号在成绩表里不存在
在cj表创建添加这个学生
}
}
全部回答
- 1楼网友:厭世為王
- 2021-03-12 12:51
定义一个map,map的键是string类型,值是所有继承了collection的类或接口(可以是list或set之类的)。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯