如果我希望“id”是键,“name”、“phoneNumber”、“eamil”是值。
public class Personal {
private int id;
private String name;
private int phoneNumber;
private String email;
public Personal(int id){
this.id = id;
}
//getter and setter here
}
输入很多人的数据后。我可以通过id获取数据。
output ex: map.get(100001); // [Dan, 123456, Dan@gmail.com]
map.get(100002); // [Kim, 123343, Kim@gmail.com]
...
问题:实现这个 HashMap 的最佳方法是什么?
非常感谢!
最佳答案
如果 ID 是唯一的并且是固定的,您可以使用:
Map<Integer,Personal> map = new HashMap<Integer,Personal>();
添加对象p
:
map.put(p.getId(), p);
然后
map.get(100001);
将返回相应的对象。
如果 ID 可以重复或可以更改,事情就会变得更加复杂。如果是这种情况,请解释您的具体要求,以便我们提供进一步帮助。
关于java - HashMap使用对象实现一键多值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13915754/