【发布时间】:2014-07-22 20:47:50
【问题描述】:
如何使用两个现有地图中的值创建新地图。
第一张地图
Map <ID, name>
第二张地图
Map <ID, email>
ID 是同一个对象。
我如何遍历这两个地图,以获取姓名和电子邮件以创建新地图,例如 以下 ?假设 String 值是唯一的。
Map <name, email>
【问题讨论】:
-
是姓名和电子邮件字符串还是对象?
-
小心!虽然 ID 可能是唯一的,但名称却不是。如果您按照您的要求进行操作,并且有两个不同的用户,具有不同的 ID 值但名称相同,例如
{ID=1,name="John Smith"}和{ID=2,name="John Smith"},那么在创建地图后,您将丢失其中一个电子邮件地址,您可以鉴于Map迭代的随机顺序,不知道提前哪一个。你要求做的事情没有意义。 -
@Archangel33 ID 是对象,名称和电子邮件是字符串
-
@JimGarrison 是对的。我删除了我的答案,因为虽然很容易做到,但由于显而易见的原因,这不是一个聪明的主意。如果您真的想创建这样的映射,最好使用专门为您提供所需信息的代码,因为您已经有两个包含所需信息的映射,而是使用相同的键。
-
@JimGarrison 我以姓名、电子邮件为例。我正在尝试找出执行此操作的逻辑。