java - Hashmap 使用哪个键和值来搜索姓名和电话号码

标签 java collections hashmap

我需要将“姓名”和“电话号码”放入 map 中。 我不明白我在 hashmap 中将哪一个作为 keyvalue 。 我的要求是我们可以用电话号码命名并用姓名搜索。

如姓名:“sanjay”电话号码:“111”;

姓名:“Krish”电话号码:“222”;

稍后按名称搜索,如果我搜索“sanjay”,它会为我提供 sanjay 的电话号码。

并且,有多个用户同名,并且一个用户可能拥有多个电话号码。

谢谢。

最佳答案

如果您有 Person类,制作一个 map ,如:Map<Person, Collection<String>> .

然后您可以通过执行 map.get(somePerson) 来查找电话号码,返回 null如果此人不存在。

您还可以考虑制作 PhoneNumber类,其中包含经过验证的电话号码的字符串值:Map<Person, Collection<PhoneNumber>> .

关于java - Hashmap 使用哪个键和值来搜索姓名和电话号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23563343/

相关文章:

java - 对将父方法映射到不同类的子类进行相同的删除

java - 迭代值时的 HashMap 线程安全

c - 如何在c中初始化hashmap?

java - 自定义二进制输入-Hadoop

java - 在没有实例控制的情况下验证模拟类型的行为

java - 关闭铃声管理器歌曲 android

java - java中复杂的逻辑运算如何解析?

java - 在 Spring 中使用 @Configuration 创建一个 bean 集合

java - 有意义的容器元素示例

java - HashMap使用对象实现一键多值