2013-03-06 48 views
-1

我在Java的新手,我有一个哈希地图如何从一个哈希表

Map<Integer, x> dataset = new HashMap<Integer, x>();

X访问对象类型的元素具有

public int id; 
public Integer getID(){ 
     return id; 
    } 

它的构造。

我向X和HashMap插入值。但是,如何访问X的元素? myMap.myX.getID()?这是我所尝试过的,并且失败了。

遍历列表的最佳方法是什么?

+0

这是不是你如何使用地图!阅读文档并更好地学习Java语法。 – Dariusz 2013-03-06 07:38:22

回答

0

Map iterface暴露了一个get方法来检索元素:

X mapObject = dataset.get(someInteger); 

或更具体的例子:

dataset.put(5, new X()); 
X mapObject = dataset.get(5); 

而且迭代,你可以这样做:

for (X mapObject:dataset.values()) 

到迭代值或

for (Integer mapKey:dataet.keySet()) 

遍历键

0

必须使用地图的get()方法来访问对象。

dataset.get(key).getID()

0

你需要让你的Object基于一个keymap,然后尝试访问它的元素。

for(Integer key : dataset.keySet()){ 
    X object = dataset.get(key); 
    // Access its elements like "object.getID()"; 
} 
0
Map<Integer, X> map = new HashMap<Integer,X>(); 
Iterator<Integer> iterator = map.keySet().iterator(); 

while (iterator.hasNext()) { 
    Integer key = iterator.next(); 
    X x = map.get(key); 
} 
0

在这里你会得到所有的ID ......

for(Integer key : dataset.keySet()){ 
    X object = dataset.get(key); 
    int objectId = object.getId(); 
}