JAVA中Map集合的问题
已经有一个Map<Integer,Student>集合了,现在使这个集合的KEY不变,使得他的VALUE变成Teacher,即变成Map<Integer,Teacher>...
已经有一个Map<Integer,Student>集合了,现在使这个集合的KEY不变,使得他的VALUE变成Teacher,即变成Map<Integer,Teacher>请问这个有办法做吗
展开
展开全部
看你的意思是想把Student和Teacher做一个映射?可以考虑把Student拿出来做一个Map<Student,Teacher>
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
再new一个Map<Integer, Teacher>, 然后取Map<Integer,Student>集合的Key,循环赋值给Map<Integer, Teacher>
追问
思路我也是这样,就是具体代码怎么写不太清楚,这个该怎么循环,你能写下具体代码吗
我这样试了下,好像不行
Teacher t = new ();
Map map = cart.getMap();
Map map1 = new LinkedHashMap();
Set keys = map.keySet();//取得所有的键
for(Iterator i = keys.iterator();i.hasNext();){
map1.put(i.next(), t);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
public static void main(String args[])
{
Map<Integer, Student> map=test1.getStudent();
Map<Integer, Teacher> map2=new HashMap<Integer, Teacher>();
for (int i = 0; i < map.size(); i++) {
map2.put(Integer.parseInt(map.keySet().toArray()[i].toString()), new Teacher());
}
}
{
Map<Integer, Student> map=test1.getStudent();
Map<Integer, Teacher> map2=new HashMap<Integer, Teacher>();
for (int i = 0; i < map.size(); i++) {
map2.put(Integer.parseInt(map.keySet().toArray()[i].toString()), new Teacher());
}
}
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询