中易网

java map解释与代码

答案:2  悬赏:30  
解决时间 2021-03-12 19:14
我现在有两个List,比如成绩(cj)和学生(xs)
其中cj表里有xs表的对象;
现在我想用map,遍历这两个List, (可以用学号比较),如果xs表有这个学生,cj表没有,就在cj表创建添加这个学生,如果有xs表有这个学生,cj表也有,就给他覆盖掉。

求带解释的代码!
最佳答案
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表创建添加这个学生

}

}
全部回答
定义一个map,map的键是string类型,值是所有继承了collection的类或接口(可以是list或set之类的)。
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
怎样测行电路的电流万用表能测出吗
手机号被对方拉黑如何破解
有e证,现考c1证,什么时候收e证要并证用?
专卖店的英文歌一开始哦嗯 哦嗯 哦哦哦嗯男女
爸妈家房子撩锅底,结过婚的女儿要不要掏钱
江苏省单招,单招和三本的区别在哪,哪个好,
开瑞汽车服务站地址有知道的么?有点事想过去
急,本人是大四毕业生,想要申请香港大学的硕
形容名声很大的成语,很显赫能写出什么词语
在VB中生成有n(n≥10)个随机数、并求出这个
账本被检察院收走,什么时候能退回
工地收北大通知书
哪有往复式空压机维修与保养教材
上海沃重贸易发展有限公司我想知道这个在什么
购买股票之后有什么证明吗 就是能够证明你是
推荐资讯
现代人有哪些传达信息的方法?
芳盛烟糖综合商店我想知道这个在什么地方
水泵轴间隙是多少?
尹艳荣妻子现在在哪里
华庭酒店停车场我想知道这个在什么地方
中坪东街北六巷地址有知道的么?有点事想过去
易门县宏达工贸有限公司怎么去啊,有知道地址
不是兄弟你不好是这世道不干净容不得你这样做
河北银行沧州分行我想知道这个在什么地方
李家沱街道我想知道这个在什么地方
男生会为女生改变自己吗?一个男生原来不优秀
华天大酒楼我想知道这个在什么地方
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?