我的Hashmap声明为HashMap<String, ArrayList<SortableContactList>>
,其中SortableContactList
列表是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)
我需要获取存储在arraylist中的对象的每个属性。我该怎么做呢。
谢谢!
答案 0 :(得分:0)
如果我正确理解了这个问题,那么对于各个属性,你需要myHash.get("myKeyString").get(x).getHomePhone()
行。问题仍然是,如何确定x,所以也许你应该考虑接受MarcoS的建议,实现HashMap
如下:HashMap<String, SortableContactList>
你应该考虑实现hashCode为您的SortableContactList确保正确的散列,即在HashMap中存储和检索对象。有关详细信息,请参阅此great advice from Effective Java
编辑:添加了MarcoS关于将HashMap实现为HashMap<String, SortableContactList>
的建议
答案 1 :(得分:0)
无法理解你的问题。 请详细说明。
有两种方法可以实现排序:
在SortableContactList类中实现Comparable接口;实现方法compareTo()
的功能。此界面可帮助您更改sort()
方法的自然顺序。
如果您想使用不同的属性进行排序,那么您应该实现包含Comparator
的{{1}}界面
在这里,您可以提供您想要对对象进行排序的基础。
希望这很有用