2014-12-02 113 views
-3

我正在努力如何调用存储在HashMapHashSet中的数据,该方法将返回存储在它们中的值和大小以及数据?如何从一个方法返回HashSet?

public HashSet <Room> getOccupiedrooms(){ 
    return occupiedRooms.size(); 
} 

这不会编译,所以我不太确定。并伤口返回存储的数据。

欢呼

+5

_“这dosent编译” _'是大小()'返回集合,而不是集本身的元素个数。快速查看文档会给你答案,为什么这不会编译。 – 2014-12-02 09:44:56

+0

因此我如何返回存储在里面的值 – 2014-12-02 09:46:04

+1

我们不知道'occupiedRooms'的数据类型是什么,所以我们不能回答,只是做推测。 – 2014-12-02 09:46:38

回答

0

您需要遍历您的HashSet,检查每个房间,如果它占用的房间添加到不同影响HashSet的。

public HashSet<Room> getOccupiedrooms(){ 
HashSet<Room> tempSet = new HashSet<Room>(); 
// iterate start 
// if room is occupied, add room to tempSet 
// iterate end 
// return tempSet 
0

让我们假设占有率是一个HashSet。所以只需在你的代码中删除.size();你将返回HashSet的大小。

public HashSet <Room> getOccupiedrooms(){ 
    return occupiedRooms; 
} 

这样你就可以得到它的大小:

getOccupiedrooms().size(); 
0

很难看到的困难是什么。只返回HashSet本身:

return occupiedRooms;