Java 使用对象的HashMap中的一键多值

Java 使用对象的HashMap中的一键多值,java,hashmap,Java,Hashmap,如果我希望id是键,名称、电话号码、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是键,名称、电话号码、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>();
然后

将返回相应的对象


如果ID可以重复或更改,事情就会变得更加复杂。如果是这种情况,请解释您的确切要求,以便我们进一步提供帮助。

使用HashMap并将您的Personal类实例放入映射中有什么不对?只是有点困惑,我想我已经得到了答案。谢谢:
map.put(p.getId(), p);
map.get(100001);