java - 从 HashMap 访问对象

标签 java

我的 Hashmap 声明为 HashMap<String, ArrayList<SortableContactList>>其中 SortableContactList list 是一个 POJO 类,如

public class SortableContactList {
    private long id;
    private String displayName;
    private String homePhone;
    private String workPhone;
    private String mobilePhone;
    private String primaryEmail;
    private String tags;
         // Getters and Setters
}

将我的 HashMap 初始化为

myHash.put(keyChar, arrayOfSortableContactList_objects)

我的需要是获取存储在数组列表中的对象的每个属性。我该怎么做。

谢谢!

最佳答案

如果我对这个问题的理解正确,您将需要 myHash.get("myKeyString").get(x).getHomePhone() 行中的某事对于个别属性。问题仍然存在,如何确定 x,所以也许你应该考虑接受 MarcoS 的建议,实现 HashMap如下:HashMap<String, SortableContactList>

并且您绝对应该考虑为您的 SortableContactList 实现 hashCode 以确保正确的散列,即在 HashMap 中存储和检索对象。详情请咨询本great advice from Effective Java

编辑:添加了 MarcoS 关于将 HashMap 实现为 HashMap<String, SortableContactList> 的建议

关于java - 从 HashMap 访问对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5139661/

相关文章:

java - 在java中如何使用属性将多个值从一个类传递到另一个类?

java-7 - "Simplified Varargs Method Invocation"已经在当前的 OpenJDK 7 中实现了吗?

java - 我们如何使用 Criteria Query 在 Spring JPA 中查询一对多关系

java - java中的浮点值

Java 表达式求值错误

java - 如何在 Android 上使用多个适配器

java - 同时使用TableCellEditor和TableCellRenderer?

java - 导航 View 项目按下时不会响应

java - HTMLDocument 文本中位置或偏移量的含义

java - 具有多种条件的可比接口(interface)